ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Geometry Namespace / EnvelopeBuilderEx Class / HasM Property
Example

In This Topic
    HasM Property (EnvelopeBuilderEx)
    In This Topic
    Gets or sets a value indicating if the EnvelopeBuilderEx recognizes M-values also known as M-awareness.
    Syntax
    Public Overrides NotOverridable Property HasM As Boolean
    public override bool HasM {get; set;}
    Remarks
    When HasM is false, MMin and MMax are always NaN.
    Example
    Update Coordinates of an Envelope
    {
      Coordinate2D minCoord = new Coordinate2D(1, 3);
      Coordinate2D maxCoord = new Coordinate2D(2, 4);
    
      Coordinate2D c1 = new Coordinate2D(0, 5);
      Coordinate2D c2 = new Coordinate2D(1, 3);
    
    
      // use the EnvelopeBuilderEx.  This constructor doesn't need to run on the MCT.
    
      EnvelopeBuilderEx builderEx = new EnvelopeBuilderEx(minCoord, maxCoord);
      // builderEx.XMin, YMin, Zmin, MMin  = 1, 3, 0, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 2, 4, 0, double.Nan
    
      // set XMin.  if XMin > XMax; both XMin and XMax change
      builderEx.XMin = 6;
      // builderEx.XMin, YMin, ZMin, MMin  = 6, 3, 0, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 6, 4, 0, double.Nan
    
      // set XMax
      builderEx.XMax = 8;
      // builderEx.XMin, YMin, ZMin, MMin  = 6, 3, 0, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 8, 4, 0, double.Nan
    
      // set XMax.  if XMax < XMin, both XMin and XMax change
      builderEx.XMax = 3;
      // builderEx.XMin, YMin, ZMin, MMin  = 3, 3, 0, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 3, 4, 0, double.Nan
    
      // set YMin
      builderEx.YMin = 2;
      // builderEx.XMin, YMin, ZMin, MMin  = 3, 2, 0, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 3, 4, 0, double.Nan
    
      // set ZMin.  if ZMin > ZMax, both ZMin and ZMax change
      builderEx.ZMin = 3;
      // builderEx.XMin, YMin, ZMin, MMin  = 3, 2, 3, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 3, 4, 3, double.Nan
    
      // set ZMax.  if ZMax < ZMin. both ZMin and ZMax change
      builderEx.ZMax = -1;
      // builderEx.XMin, YMin, ZMin, MMin  = 3, 2, -1, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 3, 4, -1, double.Nan
    
      builderEx.SetZCoords(8, -5);
      // builderEx.XMin, YMin, ZMin, MMin  = 3, 2, -5, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 3, 4, 8, double.Nan
    
    
      builderEx.SetXYCoords(c1, c2);
      // builderEx.XMin, YMin, ZMin, MMin  = 0, 3, -5, double.Nan
      // builderEx.XMax, YMax, ZMax, MMax = 1, 5, 8, double.Nan
    
    
      builderEx.HasM = true;
      builderEx.SetMCoords(2, 5);
    
      var geomEx = builderEx.ToGeometry();
    }
    Requirements

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

    ArcGIS Pro version: 3.0 or higher.
    See Also