org.osm2world.core.world.modules
Class RoadModule.Road

Object
  extended by AbstractNetworkWaySegmentWorldObject
      extended by RoadModule.Road
All Implemented Interfaces:
IntersectionTestObject, Renderable, RenderableToAllTargets, TerrainBoundaryWorldObject, WaySegmentWorldObject, WorldObject, WorldObjectWithOutline, NetworkWaySegmentWorldObject
Enclosing class:
RoadModule

public static class RoadModule.Road
extends AbstractNetworkWaySegmentWorldObject
implements WaySegmentWorldObject, RenderableToAllTargets, TerrainBoundaryWorldObject

representation of a road


Field Summary
protected static float DEFAULT_LANE_WIDTH
           
protected static float DEFAULT_PATH_CLEARING
           
protected static float DEFAULT_ROAD_CLEARING
           
 VectorXZ endCoord
           
protected static List<VectorXYZ> HANDRAIL_SHAPE
           
 RoadModule.LaneLayout laneLayout
           
 VectorXZ startCoord
           
 float width
           
 
Fields inherited from class AbstractNetworkWaySegmentWorldObject
line
 
Constructor Summary
RoadModule.Road(MapWaySegment line, TagGroup tags)
           
 
Method Summary
 double getClearingAbove(VectorXZ pos)
          returns the amount of free space above the base elevation required by this feature.
 double getClearingBelow(VectorXZ pos)
          returns the amount of free space below the base elevation required by this feature.
 GroundState getGroundState()
          returns whether this feature is on, above or below the ground.
 RoadModule.LaneLayout getLaneLayout()
           
 Material getSurface()
           
 float getWidth()
          returns the line's width
 void renderTo(Target<?> target)
           
 
Methods inherited from class AbstractNetworkWaySegmentWorldObject
getAxisAlignedBoundingBoxXZ, getCenterline, getCenterlineXZ, getCutVectorAt, getEndCutVector, getEndOffset, getEndPosition, getEndWithOffset, getOutline, getOutlinePolygon, getOutlinePolygonXZ, getPointOnCut, getPrimaryMapElement, getStartCutVector, getStartOffset, getStartPosition, getStartWithOffset, setEndCutVector, setEndOffset, setStartCutVector, setStartOffset, toString
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface WaySegmentWorldObject
getEndPosition, getStartPosition
 
Methods inherited from interface TerrainBoundaryWorldObject
getAxisAlignedBoundingBoxXZ
 
Methods inherited from interface WorldObjectWithOutline
getOutlinePolygon, getOutlinePolygonXZ
 
Methods inherited from interface WorldObject
getPrimaryMapElement
 

Field Detail

DEFAULT_LANE_WIDTH

protected static final float DEFAULT_LANE_WIDTH
See Also:
Constant Field Values

DEFAULT_ROAD_CLEARING

protected static final float DEFAULT_ROAD_CLEARING
See Also:
Constant Field Values

DEFAULT_PATH_CLEARING

protected static final float DEFAULT_PATH_CLEARING
See Also:
Constant Field Values

HANDRAIL_SHAPE

protected static final List<VectorXYZ> HANDRAIL_SHAPE

laneLayout

public final RoadModule.LaneLayout laneLayout

width

public final float width

startCoord

public final VectorXZ startCoord

endCoord

public final VectorXZ endCoord
Constructor Detail

RoadModule.Road

public RoadModule.Road(MapWaySegment line,
                       TagGroup tags)
Method Detail

getWidth

public float getWidth()
Description copied from interface: NetworkWaySegmentWorldObject
returns the line's width

Specified by:
getWidth in interface NetworkWaySegmentWorldObject

getSurface

public Material getSurface()

getLaneLayout

public RoadModule.LaneLayout getLaneLayout()

renderTo

public void renderTo(Target<?> target)
Specified by:
renderTo in interface RenderableToAllTargets

getGroundState

public GroundState getGroundState()
Description copied from interface: WorldObject
returns whether this feature is on, above or below the ground. This is relevant for elevation calculations, because the elevation of features o.t.g. is directly determined by terrain elevation data. Elevation of features above/below t.g. depends on elevation of features o.t.g. as well as other features above/below t.g.

Specified by:
getGroundState in interface WorldObject

getClearingAbove

public double getClearingAbove(VectorXZ pos)
Description copied from interface: WorldObject
returns the amount of free space above the base elevation required by this feature. If pos isn't on this representation, the clearing for a somewhat nearby point on the feature should be returned.

Specified by:
getClearingAbove in interface WorldObject

getClearingBelow

public double getClearingBelow(VectorXZ pos)
Description copied from interface: WorldObject
returns the amount of free space below the base elevation required by this feature. If pos isn't on this representation, the clearing for a somewhat nearby point on the feature should be returned.

Specified by:
getClearingBelow in interface WorldObject