|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javax.media.j3d.SceneGraphObject | +--javax.media.j3d.Node | +--javax.media.j3d.Group | +--javax.media.j3d.BranchGroup | +--ElevationModel
ElevationModel is a specialization of a BranchGroup that holds Java3D geometry objects representing a terrain map. The map is divided into segments each segment contains a Level-of-Detail switch containing the geometry for the segment in three levels of detail. This allows for faster drawing and navigation of the model as a whole.
LODSegment
Field Summary | |
private float |
deltaCol
space in meters between each column of elevation data |
private float |
deltaRow
space in meters between each row of elevation data |
private float |
east_X
maximum X coordinate |
float |
exageration
factor each elevation reading is multiplied by when drawing the model. |
GroundCoordinates |
groundCoordinates
ground coordinates for the model, contains the lat/long of the four corners in arc seconds |
int |
maxElevation
maximum elevation in meters |
int |
minElevation
minimum elevation in meters |
java.lang.String |
name
geographic name or title of the data |
private float |
north_Z
minimum Z coordinate |
private static int |
SECONDS_PER_SEGMENT
number of seconds high/wide of each segment is |
private LODSegment[][] |
segments
two dimensional array of segments comprising the model data |
private float |
south_Z
maximum Z coordinate, note, positive Z axis is in the south due to Java3D |
private float |
west_X
minimum X coordinate |
Fields inherited from class javax.media.j3d.BranchGroup |
ALLOW_DETACH |
Fields inherited from class javax.media.j3d.Group |
ALLOW_CHILDREN_EXTEND, ALLOW_CHILDREN_READ, ALLOW_CHILDREN_WRITE, ALLOW_COLLISION_BOUNDS_READ, ALLOW_COLLISION_BOUNDS_WRITE |
Fields inherited from class javax.media.j3d.Node |
ALLOW_AUTO_COMPUTE_BOUNDS_READ, ALLOW_AUTO_COMPUTE_BOUNDS_WRITE, ALLOW_BOUNDS_READ, ALLOW_BOUNDS_WRITE, ALLOW_COLLIDABLE_READ, ALLOW_COLLIDABLE_WRITE, ALLOW_LOCAL_TO_VWORLD_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING |
Fields inherited from class javax.media.j3d.SceneGraphObject |
|
Constructor Summary | |
ElevationModel(java.lang.String aFileName,
StatusWindow stat)
Load the DEM file and create a set of LODSegments based on its data. |
Method Summary | |
float |
getElevationAt(float x,
float z)
Fetches the elevation at a particular location on the terrain map given the x,z coordinates. |
float |
getMaxElevation()
retrieve the model maximum elevation, adjusted by the elevation exageration |
float |
getMinElevation()
retrieve the model minimum elevation, adjusted by the elevation exageration |
float |
getModelLength()
retrieve the model length, distance in meters from west to east |
float |
getModelWidth()
retrieve the model width, distance in meters from south to north |
Methods inherited from class javax.media.j3d.BranchGroup |
cloneNode, compile, detach, pickAll, pickAllSorted, pickAny, pickClosest |
Methods inherited from class javax.media.j3d.Group |
addChild, getAllChildren, getAlternateCollisionTarget, getChild, getCollisionBounds, insertChild, moveTo, numChildren, removeChild, setAlternateCollisionTarget, setChild, setCollisionBounds |
Methods inherited from class javax.media.j3d.Node |
cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable |
Methods inherited from class javax.media.j3d.SceneGraphObject |
clearCapability, duplicateSceneGraphObject, getCapability, getUserData, isCompiled, isLive, setCapability, setUserData, updateNodeReferences |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public GroundCoordinates groundCoordinates
private float west_X
private float east_X
private float south_Z
private float north_Z
private static int SECONDS_PER_SEGMENT
private float deltaRow
private float deltaCol
public float exageration
public int minElevation
public int maxElevation
public java.lang.String name
private LODSegment[][] segments
Constructor Detail |
public ElevationModel(java.lang.String aFileName, StatusWindow stat) throws java.lang.IllegalArgumentException
aFileName
- name of the DEM filestat
- reference to a StatusWindow object used to display load progressMethod Detail |
public float getElevationAt(float x, float z)
getElevationAt
in interface ElevationModelInterface
x
- x coordinatez
- z coordinate
public float getModelLength()
getModelLength
in interface ElevationModelInterface
public float getModelWidth()
getModelWidth
in interface ElevationModelInterface
public float getMaxElevation()
getMaxElevation
in interface ElevationModelInterface
public float getMinElevation()
getMinElevation
in interface ElevationModelInterface
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |