protected override void DrawSample(RadarChartSample sample, double dx, double dy, double currentAngle) { var ellipse = new Ellipse(); ellipse.SetBinding(Shape.StrokeProperty, new Binding(nameof(RadialChart.SamplePointStroke)) { Source = Control }); ellipse.SetBinding(Shape.StrokeThicknessProperty, new Binding(nameof(RadialChart.SamplePointStrokeThickness)) { Source = Control }); ellipse.SetBinding(Shape.FillProperty, new Binding(nameof(RadialChart.SamplePointFill)) { Source = Control }); ellipse.Width = Control.SamplePointDiameter; ellipse.Height = Control.SamplePointDiameter; Panel.SetZIndex(ellipse, 999); AngleDictionary.Add(ellipse, currentAngle); SampleDictionary.Add(ellipse, sample); Canvas.SetLeft(ellipse, dx - Control.SamplePointDiameter / 2); Canvas.SetTop(ellipse, dy - Control.SamplePointDiameter / 2); Canvas.Children.Add(ellipse); }
protected override void DrawSample(RadarChartSample sample, double dx, double dy, double currentAngle) { var element = new XElement("ellipse", new XAttribute("cx", (dx - Control.SampleDiameter / 2).ToStringInvariant()), new XAttribute("cy", (dy - Control.SampleDiameter / 2).ToStringInvariant()), new XAttribute("rx", Control.SampleDiameter.ToStringInvariant()), new XAttribute("ry", Control.SampleDiameter.ToStringInvariant()), new XAttribute("style", Control.SamplePen.ToCss())); Canvas.Add(element); }
protected abstract void DrawSample(RadarChartSample sample, double dx, double dy, double currentAngle);