org.osm2world.core.world.modules
Class WaterModule.Waterway

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

public static class WaterModule.Waterway
extends AbstractNetworkWaySegmentWorldObject
implements RenderableToAllTargets, TerrainBoundaryWorldObject


Field Summary
 
Fields inherited from class AbstractNetworkWaySegmentWorldObject
line
 
Constructor Summary
WaterModule.Waterway(MapWaySegment line)
           
 
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.
 PolygonXYZ getOutlinePolygon()
          returns a counterclockwise polygon defining the object's ground footprint.
 SimplePolygonXZ getOutlinePolygonXZ()
          returns a counterclockwise polygon defining the object's ground footprint, projected onto the XZ plane.
 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, 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 TerrainBoundaryWorldObject
getAxisAlignedBoundingBoxXZ
 
Methods inherited from interface WorldObject
getPrimaryMapElement
 

Constructor Detail

WaterModule.Waterway

public WaterModule.Waterway(MapWaySegment line)
Method Detail

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

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

getWidth

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

Specified by:
getWidth in interface NetworkWaySegmentWorldObject

getOutlinePolygon

public PolygonXYZ getOutlinePolygon()
Description copied from interface: WorldObjectWithOutline
returns a counterclockwise polygon defining the object's ground footprint.

Specified by:
getOutlinePolygon in interface WorldObjectWithOutline
Overrides:
getOutlinePolygon in class AbstractNetworkWaySegmentWorldObject
Returns:
outline polygon; null if this world object doesn't cover any area

getOutlinePolygonXZ

public SimplePolygonXZ getOutlinePolygonXZ()
Description copied from interface: WorldObjectWithOutline
returns a counterclockwise polygon defining the object's ground footprint, projected onto the XZ plane.

Specified by:
getOutlinePolygonXZ in interface WorldObjectWithOutline
Overrides:
getOutlinePolygonXZ in class AbstractNetworkWaySegmentWorldObject
Returns:
outline polygon; null if this world object doesn't cover any area

renderTo

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