ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Geometry Namespace / Multipart Class / PointCount Property
Example

In This Topic
    PointCount Property (Multipart)
    In This Topic
    Gets the count of all points in all parts for this instance.
    Syntax
    Public Overrides ReadOnly Property PointCount As Integer
    public override int PointCount {get;}
    Example
    Get the points of a Polyline
    {
      // get the points as a readonly Collection
      //Refer to the initialization region for polyline creation
      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
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also