com.esri.arcgis.geometry
Class IEnumCurveProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.geometry.IEnumCurveProxy
All Implemented Interfaces:
IEnumCurve, Externalizable, Serializable
Direct Known Subclasses:
IEnumCurve2Proxy

public class IEnumCurveProxy
extends com.esri.arcgis.interop.Dispatch
implements IEnumCurve, Serializable

Provides access to members that allow efficient construction of sequential subcurves along a polyline or polygon.

Superseded By

IEnumCurve2

Product Availability

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

See Also:
Serialized Form

Field Summary
 boolean noncastable
           
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef
 
Constructor Summary
  IEnumCurveProxy()
           
  IEnumCurveProxy(Object obj)
           
protected IEnumCurveProxy(Object obj, String iid)
           
 
Method Summary
 void addListener(String iidStr, Object theListener, Object theSource)
           
 IEnumCurve esri_clone()
          Returns a copy of this enumerator positioned at the same segment.
 double getCurveDistance()
          The current distance from the start of the curve.
 int getPartIndex()
          The current part index.
 ISegment getSegment()
          The segment covering the current distance of this curve iterator.
 double getSegmentDistance()
          The distance within the current segment of the current distance of this curve iterator.
 int getSegmentIndex()
          The current segment index within the current part.
 int getStopOptions()
          Stop options for the distance iterator.
 int getStopReason()
          The reason for the current position of the distance iterator.
 ICurve getSubcurve(double fromDistance, double toDistance, boolean asRatio)
          Extracts a portion of this curve into a new curve.
 void next(double distance)
          Moves iterator to a specified distance along the curve.
 void removeListener(String iidStr, Object theListener)
           
 void reset()
          Resets the iterator to the start of the curve.
 void setStopOptions(int stopOptions)
          Stop options for the distance iterator.
 
Methods inherited from class com.esri.arcgis.interop.Dispatch
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, optimizedVtblInvoke, queryInterface, readExternal, release, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

noncastable

public boolean noncastable
Constructor Detail

IEnumCurveProxy

public IEnumCurveProxy()

IEnumCurveProxy

public IEnumCurveProxy(Object obj)
                throws IOException
Throws:
IOException

IEnumCurveProxy

protected IEnumCurveProxy(Object obj,
                          String iid)
                   throws IOException
Throws:
IOException
Method Detail

addListener

public void addListener(String iidStr,
                        Object theListener,
                        Object theSource)
                 throws IOException
Overrides:
addListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

removeListener

public void removeListener(String iidStr,
                           Object theListener)
                    throws IOException
Overrides:
removeListener in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

esri_clone

public IEnumCurve esri_clone()
                      throws IOException,
                             AutomationException
Returns a copy of this enumerator positioned at the same segment.

Product Availability

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

Specified by:
esri_clone in interface IEnumCurve
Returns:
A reference to a com.esri.arcgis.geometry.IEnumCurve
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

reset

public void reset()
           throws IOException,
                  AutomationException
Resets the iterator to the start of the curve.

Description

Returns the distance iterator to the beginning of the enumerated curve. The distance along the curve is returned to the zero distance.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
reset in interface IEnumCurve
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

next

public void next(double distance)
          throws IOException,
                 AutomationException
Moves iterator to a specified distance along the curve.

Description

Advances the distance iterator to a specified distance along the enumerated curve.

Remarks

Note: Gaps between parts are ignored in distance computations.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
next in interface IEnumCurve
Parameters:
distance - The distance (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSegment

public ISegment getSegment()
                    throws IOException,
                           AutomationException
The segment covering the current distance of this curve iterator.

Description

Returns the segment at the current distance along the enumerated curve referenced by the distance iterator.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSegment in interface IEnumCurve
Returns:
A reference to a com.esri.arcgis.geometry.ISegment
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSegmentDistance

public double getSegmentDistance()
                          throws IOException,
                                 AutomationException
The distance within the current segment of the current distance of this curve iterator.

Description

Returns the distance from the From Point of the current Segment to the location of the distance iterator.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSegmentDistance in interface IEnumCurve
Returns:
The segmentDistance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCurveDistance

public double getCurveDistance()
                        throws IOException,
                               AutomationException
The current distance from the start of the curve.

Description

Returns the distance from the start of the curve to the current location of the distance iterator.

Remarks

Note: Gaps between parts are ignored in distance computations.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getCurveDistance in interface IEnumCurve
Returns:
The curveDistance
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPartIndex

public int getPartIndex()
                 throws IOException,
                        AutomationException
The current part index.

Description

Returns the Part Index of the part referenced by the current location of the distance iterator.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPartIndex in interface IEnumCurve
Returns:
The partIndex
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSegmentIndex

public int getSegmentIndex()
                    throws IOException,
                           AutomationException
The current segment index within the current part.

Description

Returns the index of the Segment referenced by the current location of the distance iterator. The Segment Index is relative to the Part to which the segment belongs.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSegmentIndex in interface IEnumCurve
Returns:
The segmentIndex
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStopReason

public int getStopReason()
                  throws IOException,
                         AutomationException
The reason for the current position of the distance iterator.

Description

Returns an esriCurveIteratorEnum that describes the reason for the current location of the distance iterator.

Remarks

Note: The StopReason returns value different than esriCurveIteratorNoStop only if the enumerator wasn't explicitly set to the end points of a part. For example, setting the enumerator to a distance of zero will not return esriCurveIteratorStopAtPartFrom even if that option was set with the StopOptions property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getStopReason in interface IEnumCurve
Returns:
A com.esri.arcgis.geometry.esriCurveIteratorEnum constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStopOptions

public void setStopOptions(int stopOptions)
                    throws IOException,
                           AutomationException
Stop options for the distance iterator.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setStopOptions in interface IEnumCurve
Parameters:
stopOptions - A com.esri.arcgis.geometry.esriCurveIteratorEnum constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getStopOptions

public int getStopOptions()
                   throws IOException,
                          AutomationException
Stop options for the distance iterator.

Description

Returns and sets the current esriCurveIteratorEnum stop conditions for the distance iterator.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getStopOptions in interface IEnumCurve
Returns:
A com.esri.arcgis.geometry.esriCurveIteratorEnum constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSubcurve

public ICurve getSubcurve(double fromDistance,
                          double toDistance,
                          boolean asRatio)
                   throws IOException,
                          AutomationException
Extracts a portion of this curve into a new curve.

Description

The GetSubCurve method returns a polyline or path object corresponding to a portion of the input curve. If the ISegmentCollection points to a IPolyline or a IPolygon then the output is of type IPolyline, otherwise the output is of type IPath.

Remarks

Note: Gaps between parts are ignored in distance computations.

Parameters description:

fromDistance: Input Double. Input distance that determines where the subcurve should start. The value of that parameter should be in map unit unless asRatio is true.
toDistance: Input Double. Input distance that determines where the subcurve should stop. The value of that parameter should be in map unit unless asRatio is true.
asRatio: Input Boolean. The asRatio determines if the input distances should be interpreted as map unit asRatio = false distance or parametric distance asRatio = True (0 = distance of 0, 1 = full length of the curve).

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSubcurve in interface IEnumCurve
Parameters:
fromDistance - The fromDistance (in)
toDistance - The toDistance (in)
asRatio - The asRatio (in)
Returns:
A reference to a com.esri.arcgis.geometry.ICurve
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.