public static void DrawClass(this DrawingGroup drawingGroup, int colorNumber, AreaPoints areaPoints) { var ellipses = new GeometryGroup(); foreach (var point in areaPoints.GetPoints()) { var pointSize = areaPoints.CompareCore(point) ? 4 : 1; ellipses.Children.Add(new EllipseGeometry(point, pointSize, pointSize)); } var classColor = colorNumber.GetColor(); var brush = new SolidColorBrush(classColor); var geometryDrawing = new GeometryDrawing(brush, new Pen(brush, 1), ellipses) { Geometry = ellipses }; drawingGroup.Children.Add(geometryDrawing); }
private PointDistance GetMaxPointDistance(AreaPoints areaPoints) { var maxPoint = new PointDistance(); Parallel.ForEach(areaPoints.GetPoints(), point => { var distance = areaPoints.GetDistanceToCenter(point); if (distance > maxPoint.Distance) { maxPoint = new PointDistance { Distance = distance, Point = point }; } }); return(maxPoint); }