Package org.planit.graph
Class DirectedVertexImpl
- java.lang.Object
-
- org.planit.graph.VertexImpl
-
- org.planit.graph.DirectedVertexImpl
-
- All Implemented Interfaces:
Serializable
,Comparable<Idable>
,DirectedVertex
,Vertex
,ExternalIdable
,Idable
- Direct Known Subclasses:
CentroidImpl
,NodeImpl
public class DirectedVertexImpl extends VertexImpl implements DirectedVertex
vertex representation connected to one or more entry and exit edges- Author:
- markr
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected Set<EdgeSegment>
entryEdgeSegments
Entry edge segments which connect to this vertexprotected Set<EdgeSegment>
exitEdgeSegments
Exit edge segments which connect to this vertex-
Fields inherited from class org.planit.graph.VertexImpl
edges, externalId, id, inputProperties, position
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DirectedVertexImpl(DirectedVertexImpl directedVertexImpl)
Copy constructorprotected
DirectedVertexImpl(IdGroupingToken groupId)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addEdgeSegment(EdgeSegment edgeSegment)
Add edgeSegment, do not invoke when parsing networks, this connection is auto-populated before the assignment starts based on the edge segment vertices that have been registered.DirectedVertexImpl
clone()
Clone the vertexSet<EdgeSegment>
getEntryEdgeSegments()
Collect the entry edge segments of this vertexSet<EdgeSegment>
getExitEdgeSegments()
Collect the exit edge segments of this vertexint
getNumberOfEntryEdgeSegments()
Collect the number of entry edge segments of this vertexint
getNumberOfExitEdgeSegments()
Collect the number of exit edge segments of this vertexboolean
hasEntryEdgeSegments()
Test whether no entry edge segments have been registeredboolean
hasExitEdgeSegments()
Test whether no exit edge segments have been registeredboolean
removeEdgeSegment(EdgeSegment edgeSegment)
Remove edgeSegment-
Methods inherited from class org.planit.graph.VertexImpl
addEdge, addInputProperty, generateVertexId, getEdges, getEdges, getExternalId, getId, getInputProperty, getNumberOfEdges, getPosition, getXmlId, removeEdge, removeEdge, setExternalId, setId, setPosition, setXmlId, validate
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.planit.utils.graph.DirectedVertex
getEdgeSegment, replace
-
Methods inherited from interface org.planit.utils.id.ExternalIdable
getExternalId, getXmlId, hasExternalId, hasXmlId, setExternalId, setXmlId
-
Methods inherited from interface org.planit.utils.id.Idable
compareTo, getId, idEquals, idHashCode
-
Methods inherited from interface org.planit.utils.graph.Vertex
addEdge, addInputProperty, getEdges, getEdges, getNumberOfEdges, getPosition, removeEdge, removeEdge, replace, setPosition, transformPosition, validate
-
-
-
-
Field Detail
-
entryEdgeSegments
protected final Set<EdgeSegment> entryEdgeSegments
Entry edge segments which connect to this vertex
-
exitEdgeSegments
protected final Set<EdgeSegment> exitEdgeSegments
Exit edge segments which connect to this vertex
-
-
Constructor Detail
-
DirectedVertexImpl
protected DirectedVertexImpl(IdGroupingToken groupId)
Constructor- Parameters:
groupId
- , contiguous id generation within this group for instances of this class
-
DirectedVertexImpl
protected DirectedVertexImpl(DirectedVertexImpl directedVertexImpl)
Copy constructor- Parameters:
directedVertexImpl
- to copy
-
-
Method Detail
-
getEntryEdgeSegments
public Set<EdgeSegment> getEntryEdgeSegments()
Collect the entry edge segments of this vertex- Specified by:
getEntryEdgeSegments
in interfaceDirectedVertex
- Returns:
- edgeSegments
-
getExitEdgeSegments
public Set<EdgeSegment> getExitEdgeSegments()
Collect the exit edge segments of this vertex- Specified by:
getExitEdgeSegments
in interfaceDirectedVertex
- Returns:
- edgeSegments
-
addEdgeSegment
public boolean addEdgeSegment(EdgeSegment edgeSegment)
Add edgeSegment, do not invoke when parsing networks, this connection is auto-populated before the assignment starts based on the edge segment vertices that have been registered.- Specified by:
addEdgeSegment
in interfaceDirectedVertex
- Parameters:
edgeSegment
- EdgeSegment object to be added- Returns:
- true when added, false when already present (and not added)
-
removeEdgeSegment
public boolean removeEdgeSegment(EdgeSegment edgeSegment)
Remove edgeSegment- Specified by:
removeEdgeSegment
in interfaceDirectedVertex
- Parameters:
edgeSegment
- EdgeSegment object to be removed- Returns:
- true when removed, false when not present (and not removed)
-
hasExitEdgeSegments
public boolean hasExitEdgeSegments()
Test whether no exit edge segments have been registered- Specified by:
hasExitEdgeSegments
in interfaceDirectedVertex
- Returns:
- true if no exit edge segments have been registered, false otherwise
-
hasEntryEdgeSegments
public boolean hasEntryEdgeSegments()
Test whether no entry edge segments have been registered- Specified by:
hasEntryEdgeSegments
in interfaceDirectedVertex
- Returns:
- true if no entry edge segments have been registered, false otherwise
-
getNumberOfEntryEdgeSegments
public int getNumberOfEntryEdgeSegments()
Collect the number of entry edge segments of this vertex- Specified by:
getNumberOfEntryEdgeSegments
in interfaceDirectedVertex
- Returns:
- number of entry edge segments
-
getNumberOfExitEdgeSegments
public int getNumberOfExitEdgeSegments()
Collect the number of exit edge segments of this vertex- Specified by:
getNumberOfExitEdgeSegments
in interfaceDirectedVertex
- Returns:
- number of exit edge segments
-
clone
public DirectedVertexImpl clone()
Clone the vertex- Specified by:
clone
in interfaceVertex
- Overrides:
clone
in classVertexImpl
- Returns:
- the cloned vertex
-
-