ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Geometry Namespace / IGeometryEngine Interface / CalculateNonSimpleMs Method
The multipart to calculate M-values for.
The value to which NaN M-values that could not be interpolated will be set.
Example

In This Topic
    CalculateNonSimpleMs Method (IGeometryEngine)
    In This Topic
    Calculates M attribute values for each non-simple (NaN) M-value from existing simple (non-NaN) M attributes on the specified geometry. The non-simple M-values are obtained by extrapolation/interpolation for polylines and interpolation for polygons.
    Syntax
    Function CalculateNonSimpleMs( _
       ByVal multipart As Multipart, _
       ByVal defaultMValue As Double _
    ) As Multipart
    Multipart CalculateNonSimpleMs( 
       Multipart multipart,
       double defaultMValue
    )

    Parameters

    multipart
    The multipart to calculate M-values for.
    defaultMValue
    The value to which NaN M-values that could not be interpolated will be set.

    Return Value

    A geometry in which each coordinate has a simple (non-NaN) M-value.
    Exceptions
    ExceptionDescription
    Multipart is null or empty.
    This geometry is not M-Aware.
    Example
    Interpolate M values on a polygon
    {
      List<MapPoint> coords =
      [
        MapPointBuilderEx.CreateMapPoint(0, 0, 0, 0),
        MapPointBuilderEx.CreateMapPoint(0, 1000),
        MapPointBuilderEx.CreateMapPoint(1000, 1000, 10, 50)
      ];
    
      SpatialReference sr = SpatialReferences.WebMercator;
    
      polygon = PolygonBuilderEx.CreatePolygon(coords, sr);
    
      // polygon.HasM = true
      // polygon.Points[1].HasM = true
      // polygon.Points[1].M = NaN
    
      Polygon polygonNoNaNMs = GeometryEngine.Instance.CalculateNonSimpleMs(polygon, 0) as Polygon;
    
      // polygonNoNaNMs.Points[1].HasM = true
      // polygonNoNaNMs.Points[1].M = 25  (halfway between 0 and 50)
    }
    Requirements

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

    ArcGIS Pro version: 3.0 or higher.
    See Also