ArcGIS Pro 3.1 API Reference Guide
ArcGIS.Core.Geometry Namespace / MultipointBuilderEx Class / MultipointBuilderEx Constructor / MultipointBuilderEx Constructor(IEnumerable<Coordinate2D>,SpatialReference)
The enumeration of Coordinate2D which will initialize the builder. It cannot be null.
(Optional) The spatial reference. The default value is null.
Example

In This Topic
    MultipointBuilderEx Constructor(IEnumerable<Coordinate2D>,SpatialReference)
    In This Topic
    Creates a new instance of the MultipointBuilderEx class.
    Syntax

    Parameters

    coordinate2Ds
    The enumeration of Coordinate2D which will initialize the builder. It cannot be null.
    spatialReference
    (Optional) The spatial reference. The default value is null.
    Exceptions
    ExceptionDescription
    The input coordinates enumeration is 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 mapPoint = 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
    mapPoint = 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 point = MapPointBuilderEx.CreateMapPoint(-300, 400, 4);
    builder.SetPoint(2, point);
    
    // 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, Windows 10

    ArcGIS Pro version: 3.0 or higher.
    See Also