com.esri.arcgis.location
Interface IRouteMeasureCreator

All Superinterfaces:
java.io.Serializable
All Known Subinterfaces:
IRouteMeasureCreator2
All Known Implementing Classes:
IRouteMeasureCreator2Proxy, IRouteMeasureCreatorProxy, RouteMeasureCreator

public interface IRouteMeasureCreator
extends java.io.Serializable

Provides access to the route creation properties and methods.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Description

The IRouteMeasureCreator interface allows you to create route features at a feature class level. 

Routes can be created from a line feature class in three different ways depending on how the measures are to be set. 

The InputFeatureClass property is used to set the line feature class the routes are to be created from.  The InputRouteIDFieldName property is used to specify the field name from the input feature class from which lines will be aggregated to compose a route. 

If not all of the line features are desired for route creation, the InputFeatureSelection property can be used to specify an ISelectionSet.

See IRouteMeasureCreator2.

 

Remarks

All of the three methods above require you to pass in an IGeometryDef for the output or resultant feature class.  The output GeometryDef must have HasM set to True. 

The results of CreateUsingTopology, CreateUsing2Fields, CreateUsingPoints is an IEnumBSTR, which is a container for the list of errors encountered during route creation. 

See Also:
IRouteMeasureCreator2

Method Summary
 IEnumBSTR createUsing2Fields(java.lang.String fmFieldName, java.lang.String tmFieldName, IFeatureClassName outputFClassName, IGeometryDef outputGeometryDef, java.lang.String configKeyword, ITrackCancel trackCancel)
          Create routes from polylines using two fields.
 IEnumBSTR createUsingCoordinatePriority(java.lang.String lengthFieldName, int seedingCorner, boolean ignoreGaps, IFeatureClassName outputFClassName, IGeometryDef outputGeometryDef, java.lang.String configKeyword, ITrackCancel trackCancel)
          Create routes from using topology.
 IEnumBSTR createUsingPoints(ISelectionSet pointSelection, java.lang.String pointRIDFieldName, java.lang.String pointMeasureFieldName, int updateHow, boolean ignoreGaps, double tolerance, boolean allInputFeatures, IFeatureClassName outputFClassName, IGeometryDef outputGeometryDef, java.lang.String configKeyword, ITrackCancel trackCancel)
          Create routes from polylines using points to assign measures.
 IFeatureClass getInputFeatureClass()
          The input features.
 ISelectionSet getInputFeatureSelection()
          A selection set of input features.
 java.lang.String getInputRouteIDFieldName()
          The input route identifier field name.
 boolean isBuildOutputIndex()
          Indicates whether an index is going to be built on the route id field on the output result.
 void setBuildOutputIndex(boolean status)
          Indicates whether an index is going to be built on the route id field on the output result.
 void setInputFeatureClassByRef(IFeatureClass inputFeatureClass)
          The input features.
 void setInputFeatureSelectionByRef(ISelectionSet selection)
          A selection set of input features.
 void setInputRouteIDFieldName(java.lang.String fieldName)
          The input route identifier field name.
 

Method Detail

setInputFeatureClassByRef

public void setInputFeatureClassByRef(IFeatureClass inputFeatureClass)
                               throws java.io.IOException,
                                      AutomationException
The input features.

Parameters:
inputFeatureClass - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInputFeatureClass

public IFeatureClass getInputFeatureClass()
                                   throws java.io.IOException,
                                          AutomationException
The input features.

Supported Platforms

Windows, Solaris, Linux

Remarks

This sets the input feature class, IFeatureClass, the routes are to be created from.  The input feature class must have its geometry of type Polyline

Returns:
A reference to a com.esri.arcgis.geodatabase.IFeatureClass
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRouteMeasureCreator, IFeatureClass

setInputFeatureSelectionByRef

public void setInputFeatureSelectionByRef(ISelectionSet selection)
                                   throws java.io.IOException,
                                          AutomationException
A selection set of input features.

Parameters:
selection - A reference to a com.esri.arcgis.geodatabase.ISelectionSet (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInputFeatureSelection

public ISelectionSet getInputFeatureSelection()
                                       throws java.io.IOException,
                                              AutomationException
A selection set of input features.

Supported Platforms

Windows, Solaris, Linux

Remarks

If the InputFeatureSelection is set, the InputFeatureClass does not get used even if it is set.

Returns:
A reference to a com.esri.arcgis.geodatabase.ISelectionSet
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
ISelectionSet, IRouteMeasureCreator

setInputRouteIDFieldName

public void setInputRouteIDFieldName(java.lang.String fieldName)
                              throws java.io.IOException,
                                     AutomationException
The input route identifier field name.

Supported Platforms

Windows, Solaris, Linux

Parameters:
fieldName - The fieldName (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRouteMeasureCreator

getInputRouteIDFieldName

public java.lang.String getInputRouteIDFieldName()
                                          throws java.io.IOException,
                                                 AutomationException
The input route identifier field name.

Supported Platforms

Windows, Solaris, Linux

Returns:
The fieldName
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setBuildOutputIndex

public void setBuildOutputIndex(boolean status)
                         throws java.io.IOException,
                                AutomationException
Indicates whether an index is going to be built on the route id field on the output result.

Supported Platforms

Windows, Solaris, Linux

Parameters:
status - The status (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isBuildOutputIndex

public boolean isBuildOutputIndex()
                           throws java.io.IOException,
                                  AutomationException
Indicates whether an index is going to be built on the route id field on the output result.

Supported Platforms

Windows, Solaris, Linux

Remarks

The BuildOutputIndex property can be used to create an index on the route identifier of the output feature class. 

Returns:
The status
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRouteMeasureCreator

createUsing2Fields

public IEnumBSTR createUsing2Fields(java.lang.String fmFieldName,
                                    java.lang.String tmFieldName,
                                    IFeatureClassName outputFClassName,
                                    IGeometryDef outputGeometryDef,
                                    java.lang.String configKeyword,
                                    ITrackCancel trackCancel)
                             throws java.io.IOException,
                                    AutomationException
Create routes from polylines using two fields.

Supported Platforms

Windows, Solaris, Linux

Remarks

The fmFieldName and tmFieldName parameters passed into this method are the names of the fields in the InputFeatureClass which are used to set the start (from) and the end (to) measure values of that feature.

 

Parameters:
fmFieldName - The fmFieldName (in)
tmFieldName - The tmFieldName (in)
outputFClassName - A reference to a com.esri.arcgis.geodatabase.IFeatureClassName (in)
outputGeometryDef - A reference to a com.esri.arcgis.geodatabase.IGeometryDef (in)
configKeyword - The configKeyword (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Returns:
A reference to a com.esri.arcgis.system.IEnumBSTR
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRouteMeasureCreator, IFeatureClassName, IGeometryDef

createUsingCoordinatePriority

public IEnumBSTR createUsingCoordinatePriority(java.lang.String lengthFieldName,
                                               int seedingCorner,
                                               boolean ignoreGaps,
                                               IFeatureClassName outputFClassName,
                                               IGeometryDef outputGeometryDef,
                                               java.lang.String configKeyword,
                                               ITrackCancel trackCancel)
                                        throws java.io.IOException,
                                               AutomationException
Create routes from using topology.

Supported Platforms

Windows, Solaris, Linux

Remarks

The lengthFieldName is the name of the field in the input feature class which contains the measures of the route.  Measures will be set starting from zero to the value in this field.

The seedingCorner parameter specifies the coordinate priority of where the route measure will start (measure = 0).  The coordinate priority can be:

0 - esriMSeedingUperLeft

1 - esriMSeedingBottomLeft

2 - esriMSeedingUpperRight

3 - esriMSeedingBottomRight

 

Parameters:
lengthFieldName - The lengthFieldName (in)
seedingCorner - A com.esri.arcgis.location.esriMSeedingCorner constant (in)
ignoreGaps - The ignoreGaps (in)
outputFClassName - A reference to a com.esri.arcgis.geodatabase.IFeatureClassName (in)
outputGeometryDef - A reference to a com.esri.arcgis.geodatabase.IGeometryDef (in)
configKeyword - The configKeyword (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Returns:
A reference to a com.esri.arcgis.system.IEnumBSTR
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

createUsingPoints

public IEnumBSTR createUsingPoints(ISelectionSet pointSelection,
                                   java.lang.String pointRIDFieldName,
                                   java.lang.String pointMeasureFieldName,
                                   int updateHow,
                                   boolean ignoreGaps,
                                   double tolerance,
                                   boolean allInputFeatures,
                                   IFeatureClassName outputFClassName,
                                   IGeometryDef outputGeometryDef,
                                   java.lang.String configKeyword,
                                   ITrackCancel trackCancel)
                            throws java.io.IOException,
                                   AutomationException
Create routes from polylines using points to assign measures.

Supported Platforms

Windows, Solaris, Linux

Remarks

The CreateUsingPoints method creates a route feature class by taking input a Polyline feature class and a selection set of Points or Multipoints which represent the calibration points to be used to set the measures of the Polyline.  The calibration points are features inside a feature class, which contain fields pointRIDFieldName and pointMeasrueFieldName .  The pointRIDFieldName field is the route identifier (the line feature in the InputFeatureClass) the calibration point refers to.  The pointMeasureFieldName field contains the calibration measure values. 

Parameters:
pointSelection - A reference to a com.esri.arcgis.geodatabase.ISelectionSet (in)
pointRIDFieldName - The pointRIDFieldName (in)
pointMeasureFieldName - The pointMeasureFieldName (in)
updateHow - The updateHow (in)
ignoreGaps - The ignoreGaps (in)
tolerance - The tolerance (in)
allInputFeatures - The allInputFeatures (in)
outputFClassName - A reference to a com.esri.arcgis.geodatabase.IFeatureClassName (in)
outputGeometryDef - A reference to a com.esri.arcgis.geodatabase.IGeometryDef (in)
configKeyword - The configKeyword (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Returns:
A reference to a com.esri.arcgis.system.IEnumBSTR
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
See Also:
IRouteMeasureCreator, IRouteMeasureCalibrator