Measure value determination methods, Linear referencing operations – Pitney Bowes MapXtreme User Manual

Page 384

Advertising
background image

Chapter 21: Linear Referencing

Using M values for Linear Referencing

MapXtreme v7.1

391

Developer Guide

Measure Value Determination Methods

The operations that form this category are helper methods to assist in setting and managing
measure values on a MultiCurve. Use them to fill in missing nodes along a MultiCurve when you
have at least two M values, or if no M values are present, using a relative start and end node to set
M values. Often the values are known for one or two specific locations and the rest can be
proportionally computed based on distance.

CalculateMissingMeasures(MultiCurve)

SetMeasures (MultiCurve, double startMeasure, double endMeasure)

SetMeasuresAsDistance(MultiCurve, double startDistance)

DropMeasures (MultiCurve)

ScaleMeasures(MultiCurve, double scale)

TranslateMeasures(MultiCurve, double offset)

TranslateMeasures(MultiCurve)

Reverse(MultiCurve)

Linear Referencing Operations

The second set of operations use a linear referencing system along a MultiCurve geometry to locate
points at a specific measure value or extract sub-curves between two measure values. While
MapXtreme can store reference measure values at the nodes of the MultiCurve that is input into
these methods, not all user data actually has the reference system stored in the geometry (or they
are using a storage technology that does not facilitate retaining this information). These methods,
therefore, generally have two overloaded forms, one in which the reference system is managed
within the input MultiCurve, and another in which the reference system is supplied as a start and end
measure corresponding to the first and last node of the input MultiCurve geometry.

LocateAlong(MultiCurve, double Measure)

LocateAlong(MultiCurve, double startMeasure, double endMeasure, double Measure)

LocateMeasure (MultiCurve, Point)

LocateMeasure (MultiCurve, double startMeasure, double endMeasure, Point)

LocateBetween(MultiCurve, double subCurveStartMeasure, double subCurveEndMeasure)

LocateBetween(MultiCurve, double startMeasure, double endMeasure, double
subCurveStartMeasure, double subCurveEndMeasure)

FeatureGeometry.Distance Method

The MapInfo.Geometry.FeatureGeometry class includes an overload to the Distance method that
MapXtreme uses to locate measure values along a MultiCurve when the input point is not located on
the curve. This method returns a MultiCurve that represents the shortest or longest distance
between the input point off the curve and the projected point on the curve. To specify shortest or
longest, the minimumDistance must be passed in as a boolean. Shortest distance is true. The
returned MultiCurve is the input for the LocateMeasure methods which returns a point on the
MultiCurve closest (or farthest) from the input point.

If the MultiCurve and the Point that is passed in are in different coordinate systems, then the
Distance operation is performed in the coordinate system of MultiCurve instance. The resulting
FeatureGeometry is always in the same coordinate system as MultiCurve instance.

Advertising