Example #1
0
        public override void Draw(Graphics g)
        {
            if (centerline == null)
            {
                var cpoint = GetCenter();
                foreach (var drawObject in drawObjects)
                {
                    if (drawObject is DrawLineObject line)
                    {
                        if (line.GetWorldDrawObject().HitTest(cpoint) >= 0)
                        {
                            centerline = line;
                            leftPointF = line.GetHandle(0);
                        }
                    }
                }
            }

            foreach (var drawObject in drawObjects)
            {
                if (drawObject == centerline)
                {
                    centerline.MoveHandleTo(isClose ? new PointF(0, leftPointF.Y) : leftPointF, 0);
                }
            }
            base.Draw(g);
        }
Example #2
0
        public SingleDisConnectorDevice(float x, float y, float width, float height, string entityId,
                                        List <DrawObject> drawobjs, List <DeviceDrawObjectBase> deviceDrawObjectBases, string hrefId) : base(x, y,
                                                                                                                                             width, height, entityId, drawobjs, deviceDrawObjectBases, hrefId)
        {
            var cpoint = GetCenter();

            foreach (var drawObject in drawObjects)
            {
                if (drawObject is DrawLineObject line)
                {
                    if (line.GetWorldDrawObject().HitTest(cpoint) >= 0)
                    {
                        centerline = line;
                        leftPointF = line.GetHandle(1);
                    }
                }
            }
        }
Example #3
0
        public static DrawObject CreateDrawObject(SVGUnit svge)
        {
            DrawObject o = null;

            switch (svge.getElementType())
            {
            case SVGUnit.SVGUnitType.typeLine:
                o = DrawLineObject.Create((SVGLine)svge);
                break;

            case SVGUnit.SVGUnitType.typeRect:
                o = DrawRectangleObject.Create((SVGRect)svge);
                break;

            case SVGUnit.SVGUnitType.typeEllipse:
                o = DrawEllipseObject.Create((SVGEllipse)svge);
                break;

            case SVGUnit.SVGUnitType.typePolyline:
                o = DrawPolygonObject.Create((SVGPolyline)svge);
                break;

            case SVGUnit.SVGUnitType.typeImage:
                o = DrawImageObject.Create((SVGImage)svge);
                break;

            case SVGUnit.SVGUnitType.typeText:
                o = DrawTextObject.Create((SVGText)svge);
                break;

            case SVGUnit.SVGUnitType.typePath:
                o = DrawPathObject.Create((SVGPath)svge);
                break;

            case SVGUnit.SVGUnitType.typeCircle:
                o = DrawCircleObject.Create((SVGCircle)svge);
                break;

            default:
                break;
            }
            return(o);
        }