org.osm2world.core.map_elevation.creation
Class ElevationCalculator.ElevationDeterminationScenario
Object
ElevationCalculator.ElevationDeterminationScenario
- Enclosing class:
- ElevationCalculator
protected static class ElevationCalculator.ElevationDeterminationScenario
- extends Object
Group of connected GridElements that are set up for elevation determination.
A calculate()
call will determine and store the final elevation
profile for each element.
Methods inherited from class Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
eleData
protected final CellularTerrainElevation eleData
nodeMap
protected final Map<MapNode,ElevationCalculator.ElevationDeterminationScenario.ForceNodeOnNode> nodeMap
lineMap
protected final Map<MapWaySegment,List<ElevationCalculator.ElevationDeterminationScenario.ForceNode>> lineMap
areaMap
protected final Map<MapArea,List<ElevationCalculator.ElevationDeterminationScenario.ForceNode>> areaMap
terrainPointMap
protected final Map<TerrainPoint,ElevationCalculator.ElevationDeterminationScenario.ForceNodeOnTerrainPoint> terrainPointMap
knownOverlaps
protected final Set<MapOverlap<?,?>> knownOverlaps
forces
protected final Collection<ElevationCalculator.ElevationDeterminationScenario.Force> forces
forceNodes
protected final Collection<ElevationCalculator.ElevationDeterminationScenario.ForceNode> forceNodes
ElevationCalculator.ElevationDeterminationScenario
public ElevationCalculator.ElevationDeterminationScenario(CellularTerrainElevation eleData)
addElement
public final void addElement(MapElement e)
addOverlap
public final void addOverlap(MapOverlap<?,?> o)
addNode
public final void addNode(MapNode node)
addWaySegment
public final void addWaySegment(MapWaySegment line)
addArea
public final void addArea(MapArea area)
addIntersectionWW
public void addIntersectionWW(MapIntersectionWW intersection)
addOverlapWA
public void addOverlapWA(MapOverlapWA overlap)
addOverlapAA
public void addOverlapAA(MapOverlapAA overlap)
addTerrainPoint
public final void addTerrainPoint(TerrainPoint point)
calculate
public void calculate()
- simulates several abstract "forces" affecting the elevation of
grid elements. Each force represents available information (such
as the required clearing above roads - a force will push bridges
away from the road if they are too low) or desirable characteristics
of the grid's elevation (e.g. smooth curves - a straightening force
will quickly increase for extreme angles).
Uses
calculateStep(float)
for the individual calculation steps.
forceScaleForStep
protected final float forceScaleForStep(int step)
getCalculationSteps
protected int getCalculationSteps()
- determines the number of calculation steps.
The default implementation returns
ElevationCalculator.CALCULATION_STEPS
.