Package oracle.spatial.network.lod
Interface LogicalPath
-
- All Superinterfaces:
LogicalLightPath
- All Known Subinterfaces:
SpatialPath
public interface LogicalPath extends LogicalLightPath
A LogicalPath is defined by an array of link IDs, array of node IDs, and the costs for traversing through this path. The cost of a path is the sum of the costs of the the links and nodes on the path, excluding that of the end node. The costs of the links and nodes are defined by LinkCostCalculator and NodeCostCalculator.- Since:
- 11gR1
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description LogicalPath
append(long nextLinkId, double[] nextLinkCosts, long nextNodeId, double[] connectorNodeCosts)
Append a link to this path.LogicalPath
append(long nextLinkId, double nextLinkCost, long nextNodeId, double connectorNodeCosts)
Deprecated.use append(long nextLinkId, double[] nextLinkCosts, long nextNodeId, double[] connectorNodeCosts);LogicalPath
append(LogicalPath path)
Appends a path to the end this path.LogicalPath
append(LogicalPath path, double connectorNodeCost)
Deprecated.use append(LogicalPath path);java.lang.Object
clone()
Support cloneableCategorizedUserData
getCategorizedUserData()
Returns categorized user data.double[]
getCostsAtNode(int nodeIndex)
Returns the costs to pass through the input node.double[][]
getCostsAtNodes()
Returns an array of costs at each individual nodes on the path.double[]
getCostsToNode(int nodeIndex)
Returns the cumulative costs from the start node to the input node.double[][]
getCostsToNodes()
Returns an array of cumulative costs from the start node to the nodes on the path.long[]
getLinkIds()
Returns the array of link IDs on this path.long[]
getNodeIds()
Returns the array of node IDs on this path.UserData
getUserData(int category)
Returns user data for the specified category.int
indexOfLink(long linkId)
Returns the index of the specified link in this path.int
indexOfNode(long nodeId)
Returns the index of the specified node in this path.boolean
isSimple()
Checks whether this path is simple or not.LogicalPath
prepend(long prevLinkId, double[] prevLinkCosts, long prevNodeId, double[] prevNodeCosts)
Prepend a link to this path.LogicalPath
prepend(long prevLinkId, double prevLinkCost, long prevNodeId, double prevNodeCost)
Deprecated.use prepend(long prevLinkId, double[] prevLinkCosts, long prevNodeId, double[] connectorNodeCosts);LogicalPath
prepend(LogicalPath path)
Appends a path to the beginning of this path.LogicalPath
prepend(LogicalPath path, double connectorNodeCost)
Deprecated.use prepend(LogicalPath path);void
setCategorizedUserData(CategorizedUserData userData)
Sets categorized user data.void
setUserData(int category, UserData userData)
Sets user data for the specified category.-
Methods inherited from interface oracle.spatial.network.lod.LogicalLightPath
getCost, getCosts, getEndNodeId, getFirstLinkId, getLastLinkId, getNumberOfLinks, getNumberOfNodes, getStartNodeId, isReverse, reverse, setCosts
-
-
-
-
Method Detail
-
getLinkIds
long[] getLinkIds()
Returns the array of link IDs on this path.- Returns:
- array of link IDs
-
getNodeIds
long[] getNodeIds()
Returns the array of node IDs on this path.- Returns:
- array of node IDs
-
isSimple
boolean isSimple()
Checks whether this path is simple or not. A path is simple if no node is visited twice on this path, i.e., no loop exists on this path.- Returns:
- true, if the path is simple; false, otherwise.
-
append
LogicalPath append(long nextLinkId, double nextLinkCost, long nextNodeId, double connectorNodeCosts) throws LODNetworkException
Deprecated.use append(long nextLinkId, double[] nextLinkCosts, long nextNodeId, double[] connectorNodeCosts);Append a link to this path.- Parameters:
nextLinkId
- ID of the next linknextLinkCost
- cost of the next linknextNodeId
- ID of the next nodeconnectorNodeCosts
- cost of the connector node- Throws:
LODNetworkException
-
append
LogicalPath append(long nextLinkId, double[] nextLinkCosts, long nextNodeId, double[] connectorNodeCosts) throws LODNetworkException
Append a link to this path.- Parameters:
nextLinkId
- ID of the next linknextLinkCosts
- costs of the next linknextNodeId
- ID of the next nodeconnectorNodeCosts
- costs of the connector node- Throws:
LODNetworkException
-
prepend
LogicalPath prepend(long prevLinkId, double prevLinkCost, long prevNodeId, double prevNodeCost) throws LODNetworkException
Deprecated.use prepend(long prevLinkId, double[] prevLinkCosts, long prevNodeId, double[] connectorNodeCosts);Prepend a link to this path.- Parameters:
prevLinkId
- ID of the previous linkprevLinkCost
- cost of the previous linkprevNodeId
- ID of the previous nodeprevNodeCost
- costs of the node to be prepended- Throws:
LODNetworkException
-
prepend
LogicalPath prepend(long prevLinkId, double[] prevLinkCosts, long prevNodeId, double[] prevNodeCosts) throws LODNetworkException
Prepend a link to this path.- Parameters:
prevLinkId
- ID of the previous linkprevLinkCosts
- costs of the previous linkprevNodeId
- ID of the previous nodeprevNodeCosts
- costs of the node to be prepended- Throws:
LODNetworkException
-
append
LogicalPath append(LogicalPath path, double connectorNodeCost) throws LODNetworkException
Deprecated.use append(LogicalPath path);Appends a path to the end this path.- Parameters:
path
- path to append to the endconnectorNodeCost
- cost of the connector node- Returns:
- Throws:
LODNetworkException
-
append
LogicalPath append(LogicalPath path) throws LODNetworkException
Appends a path to the end this path.- Parameters:
path
- path to append to the end- Returns:
- Throws:
LODNetworkException
-
prepend
LogicalPath prepend(LogicalPath path, double connectorNodeCost) throws LODNetworkException
Deprecated.use prepend(LogicalPath path);Appends a path to the beginning of this path.- Parameters:
path
- path to append at the beginningconnectorNodeCost
- cost of the connector node- Returns:
- Throws:
LODNetworkException
-
prepend
LogicalPath prepend(LogicalPath path) throws LODNetworkException
Appends a path to the beginning of this path.- Parameters:
path
- path to append at the beginning- Returns:
- Throws:
LODNetworkException
-
indexOfNode
int indexOfNode(long nodeId)
Returns the index of the specified node in this path.- Parameters:
nodeId
- node id- Returns:
- the index of the node, if the path contains the node; -1, otherwise.
-
indexOfLink
int indexOfLink(long linkId)
Returns the index of the specified link in this path.- Parameters:
linkId
- link id- Returns:
- the index of the link, if the path contains the link; -1, otherwise.
-
getCostsToNode
double[] getCostsToNode(int nodeIndex)
Returns the cumulative costs from the start node to the input node.- Parameters:
nodeIndex
- index of node in the reference path- Returns:
-
getCostsAtNode
double[] getCostsAtNode(int nodeIndex)
Returns the costs to pass through the input node.- Parameters:
nodeIndex
-- Returns:
-
getCostsToNodes
double[][] getCostsToNodes()
Returns an array of cumulative costs from the start node to the nodes on the path.- Returns:
-
getCostsAtNodes
double[][] getCostsAtNodes()
Returns an array of costs at each individual nodes on the path.- Returns:
-
getCategorizedUserData
CategorizedUserData getCategorizedUserData()
Returns categorized user data.- Returns:
-
setCategorizedUserData
void setCategorizedUserData(CategorizedUserData userData)
Sets categorized user data.- Parameters:
userData
-
-
getUserData
UserData getUserData(int category)
Returns user data for the specified category.- Returns:
-
setUserData
void setUserData(int category, UserData userData)
Sets user data for the specified category.- Parameters:
userData
-
-
clone
java.lang.Object clone() throws java.lang.CloneNotSupportedException
Support cloneable- Returns:
- cloned object
- Throws:
java.lang.CloneNotSupportedException
-
-