ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Geometry Namespace / MultipointBuilderEx Class / Coordinate2Ds Property
Example

In This Topic
    Coordinate2Ds Property
    In This Topic
    Gets or sets the list of coordinates that define this geometry.
    Syntax
    Public Property Coordinate2Ds As IList(Of Coordinate2D)
    public IList<Coordinate2D> Coordinate2Ds {get; set;}
    Exceptions
    ExceptionDescription
    The input is null.
    Remarks
    The getter returns the geometry coordinate list by reference. A change to the returned list changes the geometry coordinate list. The setter copies the input to a new list. The input cannot be null.
    Example
    Construct a Multipoint - using MultipointBuilderEx
    {
      Coordinate2D[] coordinate2Ds = new Coordinate2D[] { new Coordinate2D(1, 2), new Coordinate2D(-1, -2) };
      SpatialReference sr = SpatialReferences.WGS84;
    
      MultipointBuilderEx builder = new MultipointBuilderEx(coordinate2Ds, sr);
    
      // builder.PointCount = 2
    
      builder.HasZ = true;
      // builder.Zs.Count = 2
      // builder.Zs[0] = 0
      // builder.Zs[1] = 0
    
      builder.HasM = true;
      // builder.Ms.Count = 2
      // builder.Ms[0] = NaN
      // builder.Ms[1] = NaN
    
      builder.HasID = true;
      // builder.IDs.Count = 2
      // builder.IDs[0] = 0
      // builder.IDs[1] = 0
    
      // set it empty
      builder.SetEmpty();
      // builder.Coords.Count = 0
      // builder.Zs.Count = 0
      // builder.Ms.Count = 0
      // builder.IDs.Count = 0
    
    
      // reset coordinates
      List<Coordinate2D> inCoords = new List<Coordinate2D>() { new Coordinate2D(1, 2), new Coordinate2D(3, 4), new Coordinate2D(5, 6) };
      builder.Coordinate2Ds = inCoords;
      // builder.Coords.Count = 3
      // builder.HasZ = true
      // builder.HasM = true
      // builder.HasID = true
    
      double[] zs = new double[] { 1, 2, 1, 2, 1, 2 };
      builder.Zs = zs;
      // builder.Zs.Count = 6
    
      double[] ms = new double[] { 0, 1 };
      builder.Ms = ms;
      // builder.Ms.Count = 2
    
      // coordinates are now   (x, y, z, m, id)
      //  (1, 2, 1, 0, 0), (3, 4, 2, 1, 0) (5, 6, 1, NaN, 0)
    
      MapPoint mapPointFromBuilder = builder.GetPoint(2);
      // mapPoint.HasZ = true
      // mapPoint.HasM = true
      // mapPoint.HasID = true
      // mapPoint.Z  = 1
      // mapPoint.M = NaN
      // mapPoint.ID = 0
    
      // add an M to the list
      builder.Ms.Add(2);
      // builder.Ms.count = 3
    
      // coordinates are now   (x, y, z, m, id)
      //  (1, 2, 1, 0, 0), (3, 4, 2, 1, 0) (5, 6, 1, 2, 0)
    
      // now get the 2nd point again; it will now have an M value
      mapPointFromBuilder = builder.GetPoint(2);
      // mapPoint.M = 2
    
    
      int[] ids = new int[] { -1, -2, -3 };
      // assign ID values
      builder.IDs = ids;
    
      // coordinates are now   (x, y, z, m, id)
      //  (1, 2, 1, 0, -1), (3, 4, 2, 1, -2) (5, 6, 1, 2, -3)
    
    
      // create a new point
      MapPoint pointFromBuilder = MapPointBuilderEx.CreateMapPoint(-300, 400, 4);
      builder.SetPoint(2, pointFromBuilder);
    
      // coordinates are now   (x, y, z, m, id)
      //  (1, 2, 1, 0, -1), (3, 4, 2, 1, -2) (-300, 400, 4, NaN, 0)
    
    
      builder.RemovePoints(1, 3);
      // builder.PointCount = 1
    }
    Requirements

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

    ArcGIS Pro version: 3.0 or higher.
    See Also