public static winMedia.PointCollection ConvertPoints(formsMedia.PointCollection srcPoints) { if (srcPoints == null || srcPoints.Count == 0) { return(new winMedia.PointCollection()); } winMedia.PointCollection dstPoints = new winMedia.PointCollection(); Point[] array = new Point[srcPoints.Count]; srcPoints.CopyTo(array, 0); foreach (Point point in array) { dstPoints.Add(new winFound.Point(point.X, point.Y)); } return(dstPoints); }
public PathFragment(Windows.UI.Xaml.Media.PointCollection pointCollection) : base() { int winding = 0; double lastAngle = 0; foreach (Point p in pointCollection) { Cartesian c = new Cartesian(p.X, p.Y, 0, winding); if (BasicLib.Quadrant3To0(lastAngle, c.Angle)) { winding += 1; } else if (BasicLib.Quadrant0To3(lastAngle, c.Angle)) { winding -= 1; } c.WindingNumber = winding; Add(c); lastAngle = c.Angle; } }