org.osm2world.core.world.data
public abstract class NoOutlineWaySegmentWorldObject extends Object implements WaySegmentWorldObject, IntersectionTestObject
WaySegmentWorldObject
s that don't have an outline,
and are not part of a network.
Instead, they can be considered infinitely thin.Modifier and Type | Field and Description |
---|---|
protected MapWaySegment |
segment |
Constructor and Description |
---|
NoOutlineWaySegmentWorldObject(MapWaySegment segment) |
Modifier and Type | Method and Description |
---|---|
void |
defineEleConstraints(EleConstraintEnforcer enforcer)
lets this object add constraints for the relative elevations of its
EleConnector s. |
AxisAlignedBoundingBoxXZ |
getAxisAlignedBoundingBoxXZ() |
protected List<VectorXYZ> |
getBaseline()
returns the 3d vertex sequence running along the segment.
|
Iterable<EleConnector> |
getEleConnectors()
returns all
EleConnector s used by this WorldObject |
VectorXZ |
getEndPosition()
returns the end position.
|
protected VectorXYZ |
getEndXYZ()
returns the 3d end position.
|
MapWaySegment |
getPrimaryMapElement()
returns the "primary"
MapElement for this WorldObject;
i.e. |
VectorXZ |
getStartPosition()
returns the start position.
|
protected VectorXYZ |
getStartXYZ()
returns the 3d start position.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getGroundState
protected final MapWaySegment segment
public NoOutlineWaySegmentWorldObject(MapWaySegment segment)
public final MapWaySegment getPrimaryMapElement()
WorldObject
MapElement
for this WorldObject;
i.e. the one it is most strongly associated with.
Can be null if there is no (clear) primary element for this feature.getPrimaryMapElement
in interface WaySegmentWorldObject
getPrimaryMapElement
in interface WorldObject
public Iterable<EleConnector> getEleConnectors()
WorldObject
EleConnector
s used by this WorldObjectgetEleConnectors
in interface WorldObject
public void defineEleConstraints(EleConstraintEnforcer enforcer)
WorldObject
EleConnector
s. Called after WorldObject.getEleConnectors()
.defineEleConstraints
in interface WorldObject
public VectorXZ getStartPosition()
WaySegmentWorldObject
MapWaySegment
's start position;
as node features such as crossings require space, too.getStartPosition
in interface WaySegmentWorldObject
public VectorXZ getEndPosition()
WaySegmentWorldObject
WaySegmentWorldObject.getStartPosition()
for details.getEndPosition
in interface WaySegmentWorldObject
public AxisAlignedBoundingBoxXZ getAxisAlignedBoundingBoxXZ()
getAxisAlignedBoundingBoxXZ
in interface IntersectionTestObject
protected VectorXYZ getStartXYZ()
protected VectorXYZ getEndXYZ()
protected List<VectorXYZ> getBaseline()