com.esri.arcgis.geodatabase
Interface INetworkForwardStarAdjacencies

All Superinterfaces:
Serializable
All Known Implementing Classes:
INetworkForwardStarAdjacenciesProxy, NetworkForwardStarAdjacencies

public interface INetworkForwardStarAdjacencies
extends 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.

The NetworkForwardStarAdjacencies object is created by calling the INetworkQuery::CreateForwardStarAdjacencies method.

Product Availability

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


Method Summary
 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.
 

Method Detail

getCount

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. Use this value to iterate over the adjacent elements.

Product Availability

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

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

queryAtJunction

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.

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

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 accessible positions (starting from the atJunction) along the network edge element that was queried. The position values can 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 will be accessible, so the fromPosition parameter will be returned as 0.0 and the toPosition parameter will be returned as 1.0.

In the case when only a portion of the edge element is accessible, this means the edge has been partially restricted by a call to the INetworkForwardStarEx::AddEdgeRestriction method.

Product Availability

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

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

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.

Parameters:
index - The index (in)
adjacentJunction - A reference to a com.esri.arcgis.geodatabase.INetworkJunction (in)
isFiltered - The isFiltered (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryTurn

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.

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

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.

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

isHasTurnRestriction

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

Remarks

The NetworkForwardStarAdjacencies object holds the adjacent network elements that were queried by calling the INetworkForwardStarEx::QueryAdjacencies method.

The HasTurnRestriction property indicates if any of the edges adjacent to the atJunction have not been included in the NetworkForwardStarAdjacencies object due to a turn restriction.

Product Availability

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

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