org.geotools.graph.structure.opt
Class OptEdge

java.lang.Object
  extended byorg.geotools.graph.structure.opt.OptGraphable
      extended byorg.geotools.graph.structure.opt.OptEdge
All Implemented Interfaces:
Edge, Graphable, java.io.Serializable

public class OptEdge
extends OptGraphable
implements Edge

Optimized implementation of Edge.

Author:
Justin Deoliveira, Refractions Research Inc, jdeolive@refractions.net
See Also:
Edge, Serialized Form

Nested Class Summary
 class OptEdge.RelatedIterator
           
 
Field Summary
 
Fields inherited from interface org.geotools.graph.structure.Edge
EQUAL_NODE_ORIENTATION, OPPOSITE_NODE_ORIENTATION, UNEQUAL_NODE_ORIENTATION
 
Constructor Summary
OptEdge(OptNode nodeA, OptNode nodeB)
          Constructs a new optimized edge.
 
Method Summary
 int compareNodes(Edge other)
          Compares the node orientation of the edge with another edge.
 Node getNodeA()
          Returns the A node of the edge.
 Node getNodeB()
          Returns the B node of the edge.
 Node getOtherNode(Node node)
          Returns one of the two nodes of an edge.
 java.util.Iterator getRelated()
          Returns an iterator over any related components.
 void reverse()
          Reverses the node orientation of the edge.
 
Methods inherited from class org.geotools.graph.structure.opt.OptGraphable
getCount, getID, getObject, isVisited, setCount, setID, setObject, setVisited
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.geotools.graph.structure.Graphable
getCount, getID, getObject, isVisited, setCount, setID, setObject, setVisited
 

Constructor Detail

OptEdge

public OptEdge(OptNode nodeA,
               OptNode nodeB)
Constructs a new optimized edge.

Parameters:
nodeA - A node of edge.
nodeB - B node of edge.
Method Detail

getNodeA

public Node getNodeA()
Description copied from interface: Edge
Returns the A node of the edge.

Specified by:
getNodeA in interface Edge
Returns:
The A node.
See Also:
Edge.getNodeA()

getNodeB

public Node getNodeB()
Description copied from interface: Edge
Returns the B node of the edge.

Specified by:
getNodeB in interface Edge
Returns:
The B node.
See Also:
Edge.getNodeB()

getOtherNode

public Node getOtherNode(Node node)
Description copied from interface: Edge
Returns one of the two nodes of an edge. If the specified node is node A, then node B is returned, and vice versa.

Specified by:
getOtherNode in interface Edge
Parameters:
node - The node opposite of the node to return.
Returns:
Node A if node B is specified, node B if node A is specified.
See Also:
Edge.getOtherNode(Node)

reverse

public void reverse()
Description copied from interface: Edge
Reverses the node orientation of the edge.

Specified by:
reverse in interface Edge
See Also:
Edge.reverse()

compareNodes

public int compareNodes(Edge other)
Description copied from interface: Edge
Compares the node orientation of the edge with another edge.

Specified by:
compareNodes in interface Edge
Returns:
EQUAL_NODE_ORIENTATION : both nodes are equal in the correct order. UNEQUAL_NODE_ORIENTATION: both nodes are not equal OPPOSITE_NODE_ORIENTATION : both nodes are equal in opposite order.
See Also:
Edge.compareNodes(Edge)

getRelated

public java.util.Iterator getRelated()
Description copied from interface: Graphable
Returns an iterator over any related components. A graph component is related to other components of the graph of similary type through some relationship.

Specified by:
getRelated in interface Graphable
Returns:
Iterator An iterator over other components of the graph that are related to the component.
See Also:
Graphable.getRelated()


Copyright © GeoTools. All Rights Reserved.