drasys.or.graph
Interface PropertiesI
- All Known Subinterfaces:
- TimeWindowPropertiesI
- All Known Implementing Classes:
- PropertiesAdapter
- public interface PropertiesI
- extends VertexPropertiesI, EdgePropertiesI
The interface used by algorithms to obtain vertex, edge and graph properties.
The properties used by an algorithm can be tailored by implementing this interface and calling setProperties() in the algorithm's interface.
isConnectionRestricted
public boolean isConnectionRestricted(EdgeI inEdge,
VertexI vertex,
EdgeI outEdge)
- Prevents the algorithm from crossing a vertex from the inEdge to the OutEdge.
This attribute can be used to implement turn restrictions in a graph with out the overhead of artificial elements.
Some algorithms don't use this attribute and return false for 'usesConnectionProperties()".
- Parameters:
inEdge
- the edge traversed to reach the vertex.vertex
- the vertex.outEdge
- the edge traversed to leave the vertex.
getConnectionCost
public double getConnectionCost(EdgeI inEdge,
VertexI vertex,
EdgeI outEdge)
- Returns the cost of crossing a vertex between two explicit edges.
This attribute can be used to implement turn penalties in a graph with out the overhead of artificial elements.
Some algorithms don't use this attribute and return false for 'usesConnectionProperties()".
- Parameters:
inEdge
- the edge traversed to reach the vertex.vertex
- the vertex.outEdge
- the edge traversed to leave the vertex.
getConnectionTime
public double getConnectionTime(EdgeI inEdge,
VertexI vertex,
EdgeI outEdge)
- Returns the time to cross a vertex between two explicit edges.
This attribute can be used to implement turn delays in a graph with out the overhead of artificial elements.
Some algorithms don't use this attribute and return false for 'usesConnectionProperties()".
- Parameters:
inEdge
- the edge traversed to reach the vertex.vertex
- the vertex.outEdge
- the edge traversed to leave the vertex.
Copyright(C)1997-2000 by DRA Systems all rights reserved. OpsResearch.com