// get the points as a readonly Collection ReadOnlyPointCollection pts = polyline.Points; int numPts = polyline.PointCount; // OR get an enumeration of the points IEnumerator<MapPoint> enumPts = polyline.Points.GetEnumerator(); // OR get the point coordinates as a readonly list of Coordinate2D IReadOnlyList<Coordinate2D> coordinates = polyline.Copy2DCoordinatesToList(); // OR get the point coordinates as a readonly list of Coordinate3D IReadOnlyList<Coordinate3D> coordinates3D = polyline.Copy3DCoordinatesToList(); // OR get a subset of the collection as Coordinate2D using preallocated memory IList<Coordinate2D> coordinate2Ds = new List<Coordinate2D>(10); // allocate some space ICollection<Coordinate2D> subsetCoordinates2D = coordinate2Ds; // assign pts.Copy2DCoordinatesToList(1, 2, ref subsetCoordinates2D); // copy 2 elements from index 1 into the allocated list // coordinate2Ds.Count = 2 // do something with the coordinate2Ds // without allocating more space, obtain a different set of coordinates pts.Copy2DCoordinatesToList(5, 9, ref subsetCoordinates2D); // copy 9 elements from index 5 into the allocated list // coordinate2Ds.Count = 9 // OR get a subset of the collection as Coordinate3D using preallocated memory IList<Coordinate3D> coordinate3Ds = new List<Coordinate3D>(15); // allocate some space ICollection<Coordinate3D> subsetCoordinates3D = coordinate3Ds; // assign pts.Copy3DCoordinatesToList(3, 5, ref subsetCoordinates3D); // copy 5 elements from index 3 into the allocated list // coordinate3Ds.Count = 5 // OR get a subset of the collection as MapPoint using preallocated memory IList<MapPoint> mapPoints = new List<MapPoint>(7); // allocate some space ICollection<MapPoint> subsetMapPoint = mapPoints; // assign pts.CopyPointsToList(1, 4, ref subsetMapPoint); // copy 4 elements from index 1 into the allocated list // mapPoints.Count = 4
Target Platforms: Windows 11, Windows 10