com.esri.arcgis.geodatabase
Class INetworkForwardStarAdjacenciesProxy

java.lang.Object
  extended by com.esri.arcgis.interop.Dispatch
      extended by com.esri.arcgis.geodatabase.INetworkForwardStarAdjacenciesProxy
All Implemented Interfaces:
INetworkForwardStarAdjacencies, Externalizable, Serializable

public class INetworkForwardStarAdjacenciesProxy
extends com.esri.arcgis.interop.Dispatch
implements INetworkForwardStarAdjacencies, Serializable

Provides access to members that specify the adjacent network elements returned by the NetworkForwardStar object.

Remarks

Use the INetworkForwardStarAdjacencies interface to query network elements returned by the INetworkForwardStar::QueryAdjacencies method.

Product Availability

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

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.esri.arcgis.interop.Dispatch
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, E
 
Constructor Summary
  INetworkForwardStarAdjacenciesProxy()
           
  INetworkForwardStarAdjacenciesProxy(Object obj)
           
protected INetworkForwardStarAdjacenciesProxy(Object obj, String iid)
           
 
Method Summary
 void addListener(String iidStr, Object theListener, Object theSource)
           
 int getCount()
          Number of adjacent edges returned by the NetworkForwardStar object.
 boolean isHasTurn(int index)
          Indicates if the adjacent edge at the specified index has a turn.
 boolean isHasTurnRestriction()
          Indicates if any of the adjacent edges are restricted due to a turn restriction.
 void queryAtJunction(INetworkJunction junction)
          Queries the junction element used as the atJunction in the NetworkForwardStar object.
 void queryEdge(int index, INetworkEdge adjacentEdge, double[] fromPosition, double[] toPosition)
          Queries the adjacent edge element at the specified index.
 void queryToJunction(int index, INetworkJunction adjacentJunction, boolean[] isFiltered)
          For the adjacent edge element at the specified index, queries the junction element opposite of the atJunction.
 void queryTurn(int index, INetworkTurn adjacentTurn)
          Queries the turn element that passes through the fromEdge, the atJunction, and the adjacent edge at the specified index.
 void readExternal(ObjectInput in)
           
 void removeListener(String iidStr, Object theListener)
           
 void writeExternal(ObjectOutput out)
           
 
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, queryInterface, release, setNativeMode, setPropertyByName, toString, vtblInvoke
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

INetworkForwardStarAdjacenciesProxy

public INetworkForwardStarAdjacenciesProxy()

INetworkForwardStarAdjacenciesProxy

public INetworkForwardStarAdjacenciesProxy(Object obj)
                                    throws IOException
Throws:
IOException

INetworkForwardStarAdjacenciesProxy

protected INetworkForwardStarAdjacenciesProxy(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

getCount

public int getCount()
             throws IOException,
                    AutomationException
Number of adjacent edges returned by the NetworkForwardStar object.

Remarks

The Count is the number of adjacent edge elements returned by INetworkForwardStar::QueryAdjacencies.

Product Availability

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

Specified by:
getCount in interface INetworkForwardStarAdjacencies
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryAtJunction

public void queryAtJunction(INetworkJunction junction)
                     throws IOException,
                            AutomationException
Queries the junction element used as the atJunction in the NetworkForwardStar object.

Remarks

The QueryAtJunction method retrieves the junction element used by the INetworkForwardStar::QueryAdjacencies method.

The QueryAtJunction method requires an instantiated NetworkJunction object to be passed in as a parameter. You can create an empty NetworkJunction object by using the INetworkQuery::CreateNetworkElement method.

Product Availability

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

Specified by:
queryAtJunction in interface INetworkForwardStarAdjacencies
Parameters:
junction - A reference to a com.esri.arcgis.geodatabase.INetworkJunction (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryEdge

public void queryEdge(int index,
                      INetworkEdge adjacentEdge,
                      double[] fromPosition,
                      double[] toPosition)
               throws IOException,
                      AutomationException
Queries the adjacent edge element at the specified index.

Remarks

The QueryEdge method returns the edge element that is adjacent to the atJunction at the specified index.

The index values range from 0 to (Count - 1).

The QueryEdge method requires an instantiated NetworkEdge object to be passed in as a parameter. You can create an empty NetworkEdge object by using the INetworkQuery::CreateNetworkElement method.

The fromPosition and toPosition parameters indicate the range of positional values along the network edge element that was queried. The position values range from 0.0 to 1.0, where 0.0 is at the starting end of the edge element and 1.0 is at the terminating end of the edge element. The fromPosition value will always be less than or equal to the toPosition value, regardless of the Direction property of the edge element. In most cases, the entire edge element is queried, so the fromPosition parameter will be returned as 0.0 and the toPosition parameter will be returned as 1.0. A common case when only a portion of the edge element is queried is when querying an SDC network dataset with hyperedges.

When analyzing an SDC network dataset that has hyperedges, the call to QueryAdjacencies will also return the portion of the hyperedges that corresponds to the queried adjacent edge elements. For example, below is a simple network dataset with three junctions (A, B, and C), two regular edges (EIDs 51 and 52), and a hyperedge (EID 88); and all three edge elements are digitized from left to right:

SDC network dataset with hyperedge

Example A: When calling QueryAdjacencies with junction A as the atJunction, the NetworkForwardStarAdjacencies object will contain edge 51 in the along-digitized Direction, with a fromPosition parameter of 0.0 and a toPosition parameter of 1.0. It will also include the portion of the hyperedge that corresponds to that edge element -- edge 88 in the along-digitized Direction, with a fromPosition parameter of 0.0 and a toPosition parameter of 1.0.

Example B: When calling QueryAdjacencies with junction B as the atJunction, the NetworkForwardStarAdjacencies object will contain edge 51 in the against-digitized Direction, with a fromPosition of 0.0 and a toPosition of 1.0; and edge 52 in the along-digitized Direction, with a fromPosition parameter of 0.0 and a toPosition parameter of 1.0. The NetworkForwardStarAdjacencies object will also include the portions of the hyperedge that correspond to those edge elements:

Product Availability

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

Specified by:
queryEdge in interface INetworkForwardStarAdjacencies
Parameters:
index - The index (in)
adjacentEdge - A reference to a com.esri.arcgis.geodatabase.INetworkEdge (in)
fromPosition - The fromPosition (out: use single element array)
toPosition - The toPosition (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryToJunction

public void queryToJunction(int index,
                            INetworkJunction adjacentJunction,
                            boolean[] isFiltered)
                     throws IOException,
                            AutomationException
For the adjacent edge element at the specified index, queries the junction element opposite of the atJunction.

Remarks

The QueryToJunction method returns the junction element that is opposite the atJunction via the QueryEdge edge element at the specified index.

The index values range from 0 to (Count - 1).

The QueryToJunction method requires an instantiated NetworkJunction object to be passed in as a parameter. You can create an empty NetworkJunction object by using the INetworkQuery::CreateNetworkElement method.

Product Availability

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

Specified by:
queryToJunction in interface INetworkForwardStarAdjacencies
Parameters:
index - The index (in)
adjacentJunction - A reference to a com.esri.arcgis.geodatabase.INetworkJunction (in)
isFiltered - The isFiltered (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryTurn

public void queryTurn(int index,
                      INetworkTurn adjacentTurn)
               throws IOException,
                      AutomationException
Queries the turn element that passes through the fromEdge, the atJunction, and the adjacent edge at the specified index.

Remarks

The QueryTurn method returns the turn element that traverses from the fromEdge through the atJunction to the QueryEdge edge element at the specified index. The QueryTurn method does not always return a turn element -- to determine if a turn element will be returned, call the HasTurn property using the same index value.

The index values range from 0 to (Count - 1).

The QueryTurn method requires an instantiated NetworkTurn object to be passed in as a parameter. You can create an empty NetworkTurn object by using the INetworkQuery::CreateNetworkElement method.

Product Availability

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

Specified by:
queryTurn in interface INetworkForwardStarAdjacencies
Parameters:
index - The index (in)
adjacentTurn - A reference to a com.esri.arcgis.geodatabase.INetworkTurn (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHasTurn

public boolean isHasTurn(int index)
                  throws IOException,
                         AutomationException
Indicates if the adjacent edge at the specified index has a turn.

Product Availability

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

Specified by:
isHasTurn in interface INetworkForwardStarAdjacencies
Parameters:
index - The index (in)
Returns:
The hasTurn
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHasTurnRestriction

public boolean isHasTurnRestriction()
                             throws IOException,
                                    AutomationException
Indicates if any of the adjacent edges are restricted due to a turn restriction.

Remarks

The HasTurnRestriction property indicates whether or not the QueryTurn method will not return a turn element due to a Restriction attribute set in the NetworkForwardStar object.

Product Availability

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

Specified by:
isHasTurnRestriction in interface INetworkForwardStarAdjacencies
Returns:
The hasTurnRestriction
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Overrides:
writeExternal in class com.esri.arcgis.interop.Dispatch
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class com.esri.arcgis.interop.Dispatch
Throws:
IOException
ClassNotFoundException