public override SvgPathSegList VisitCircleElement(SvgCircleElement element)
        {
            var cx = element.Cx?.Value ?? 0;
            var cy = element.Cy?.Value ?? 0;
            var r  = element.R?.Value ?? 0;

            return(CreateEllipsePaths(cx, cy, r, r));
        }
        public static GraphicsPath CreatePath(SvgCircleElement element)
        {
            GraphicsPath gp = new GraphicsPath();

            float _cx = (float)element.Cx.AnimVal.Value;
            float _cy = (float)element.Cy.AnimVal.Value;
            float _r  = (float)element.R.AnimVal.Value;

            gp.AddEllipse(_cx - _r, _cy - _r, _r * 2, _r * 2);

            return(gp);
        }
Exemplo n.º 3
0
        protected override void RenderCircle(CanvasDrawingSession session, SvgCircleElement element)
        {
            var centerX = this.LengthConverter.ConvertX(element.CenterX);
            var centerY = this.LengthConverter.ConvertY(element.CenterY);
            var radiusX = this.LengthConverter.ConvertX(element.Radius);
            var radiusY = this.LengthConverter.ConvertY(element.Radius);

            using (var geometry = CanvasGeometry.CreateEllipse(this.ResourceCreator, centerX, centerY, radiusX, radiusY))
            {
                this.RenderGeometory(session, geometry, element.Transform.Result, element.Style);
            }
        }
Exemplo n.º 4
0
        public Geometry CreateGeometry(SvgCircleElement element)
        {
            double _cx = Math.Round(element.Cx.AnimVal.Value, 4);
            double _cy = Math.Round(element.Cy.AnimVal.Value, 4);
            double _r  = Math.Round(element.R.AnimVal.Value, 4);

            if (_r <= 0)
            {
                return(null);
            }

            EllipseGeometry geometry = new EllipseGeometry(new Point(_cx, _cy), _r, _r);

            return(geometry);
        }
Exemplo n.º 5
0
 public virtual void VisitCircleElement(SvgCircleElement element)
 => DefaultVisit(element);
Exemplo n.º 6
0
        public override void VisitCircleElement(SvgCircleElement element)
        {
            base.VisitCircleElement(element);

            this.RenderShapeToCanvas(element, new EllipsePolygon(element.Cx.Value.Value, element.Cy.Value.Value, element.R.Value.Value));
        }
 public override void VisitCircleElement(SvgCircleElement element)
 => VisitPathSegList(element, element.ConvertToPathSegList());
Exemplo n.º 8
0
 protected abstract void RenderCircle(TSession session, SvgCircleElement element);