IMCollection Interface

Provides access to members that control operations on M-aware multipoints, polylines, polygons and multipatches.

Members

Name Description
Read-only property MMax The maximum M value.
Read-only property MMin The minimum M value.
Method MultiplyMs Multiplies all the M values by a factor.
Method OffsetMs Offsets all the M values by an offset value.

IMCollection.MMax Property

The maximum M value.

Public ReadOnly Property MMax As Double
public double MMax {get;}

Description

Returns the maximum M attribute contained within the MAware object collection.

IMCollection.MMin Property

The minimum M value.

Public ReadOnly Property MMin As Double
public double MMin {get;}

Description

Returns the minimum M attribute contained within the MAware object collection.

IMCollection.MultiplyMs Method

Multiplies all the M values by a factor.

Public Sub MultiplyMs ( _
    ByVal factor As Double _
)
public void MultiplyMs (
    double factor
);

Remarks

The MultiplyMs method will update all the measure attributes for a PolyLine, and should only be used if every measure has been set (i.e. there are no NaNs). Check the IMAware::MSimple property or use the IMSegmentation methods to fill in any missing measure values. MultiplyMs is analogous to scaling spatial coordinates.

public IPolyline MultiplyMs(IPolyline polyline, double factor)

    {

        //Offset (add) the M values on a PolyLine by a factor

        IMAware mAware = polyline as IMAware;

        IMCollection mCollection = mAware as IMCollection;

        if (mAware.MAware)

        {

            mCollection.MultiplyMs(factor);

            return mCollection as IPolyline;

        }

        else

        {

            return null;

        }

    }

IMCollection.OffsetMs Method

Offsets all the M values by an offset value.

Public Sub OffsetMs ( _
    ByVal Offset As Double _
)
public void OffsetMs (
    double Offset
);

Remarks

The OffsetMs method will update all the measure attributes for a PolyLine, and should only be used if every measure has been set (i.e. there are no NaNs). Check the IMAware::MSimple property or use the IMSegmentation methods to fill in any missing measure values. OffsetMs is analgous to moving spatial coordinates.

public IPolyline OffsetMs(IPolyline polyline, double offset)

    {

        //Offset (add) the M values on a PolyLine by a factor

        IMAware mAware = polyline as IMAware;

        IMCollection mCollection = mAware as IMCollection;

        if (mAware.MAware)

        {

            mCollection.OffsetMs(offset);

            return mCollection as IPolyline;

        }

        else

        {

            return null;

        }

    }

Classes that implement IMCollection

Classes Description
MultiPatch A collection of surface patches.
Multipoint An ordered collection of points; optionally has measure, height and ID attributes.
Polygon A collection of rings ordered by their containment relationship; optionally has measure, height and ID attributes.
Polyline An ordered collection of paths; optionally has measure, height and ID attributes.

Remarks

IMCollection supports operations performed on a collection of geometry objects that have M values. For IMCollection operations to be performed, the object must be MAware and have non-NaN Ms.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.

You can no longer sign into this site. Go to your ArcGIS portal or the ArcGIS Location Platform dashboard to perform management tasks.

Your ArcGIS portal

Create, manage, and access API keys and OAuth 2.0 developer credentials, hosted layers, and data services.

Your ArcGIS Location Platform dashboard

Manage billing, monitor service usage, and access additional resources.

Learn more about these changes in the What's new in Esri Developers June 2024 blog post.

Close