Ejemplo n.º 1
0
        public static void PreparePointSymbol(IPaintTo3D paintTo3D, PointSymbol symbol)
        {
            int offset = 0;

            if (paintTo3D.UseLineWidth)
            {
                offset = 6;                         // so wird gesteuert dass bei nur dünn die dünnen Punkte und bei
            }
            // mit Linienstärke ggf. die dicken Punkte angezeigt werden (Forderung PFOCAD)
            Bitmap bmp = null;

            switch ((GeoObject.PointSymbol)((int)symbol & 0x07))
            {
            case CADability.GeoObject.PointSymbol.Empty:
                bmp = null;
                break;

            case CADability.GeoObject.PointSymbol.Dot:
            {
                bmp = BitmapList[0 + offset];
            }
            break;

            case CADability.GeoObject.PointSymbol.Plus:
            {
                bmp = BitmapList[1 + offset];
            }
            break;

            case CADability.GeoObject.PointSymbol.Cross:
            {
                bmp = BitmapList[2 + offset];
            }
            break;

            case CADability.GeoObject.PointSymbol.Line:
            {
                bmp = BitmapList[3 + offset];
            }
            break;
            }
            if (bmp != null)
            {
                paintTo3D.PrepareIcon(bmp);
            }
            bmp = null;
            if ((symbol & CADability.GeoObject.PointSymbol.Circle) != 0)
            {
                bmp = BitmapList[5 + offset];
            }
            if ((symbol & CADability.GeoObject.PointSymbol.Square) != 0)
            {
                bmp = BitmapList[4 + offset];
            }
            if ((symbol & CADability.GeoObject.PointSymbol.Select) != 0)
            {
                bmp = BitmapList[12];
            }
            if (bmp != null)
            {
                paintTo3D.PrepareIcon(bmp);
            }
        }