|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectucar.visad.display.DisplayMaster
ucar.unidata.view.geoloc.NavigatedDisplay
ucar.unidata.view.geoloc.GlobeDisplay
public class GlobeDisplay
Provides a navigated globe for displaying geolocated data. Any displayable data must be able to map to RealType.Latitude, RealType.Longitude and/or RealType.Altitude.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class ucar.unidata.view.geoloc.NavigatedDisplay |
|---|
NavigatedDisplay.VerticalMapSet |
| Field Summary | |
|---|---|
static String |
BOTTOM_VIEW_NAME
Bottom View name |
static double |
EARTH_RADIUS
Earth Radius (m) |
static String |
EAST_VIEW_NAME
East View name |
static String |
NORTH_VIEW_NAME
North View name |
static String |
SOUTH_VIEW_NAME
South View name |
static String |
TOP_VIEW_NAME
Top View name |
static String |
WEST_VIEW_NAME
West View name |
| Fields inherited from class ucar.unidata.view.geoloc.NavigatedDisplay |
|---|
BOTTOM_VIEW, CLIP_BACK_DEFAULT, CLIP_BACK_PERSPECTIVE, CLIP_FRONT_DEFAULT, CLIP_FRONT_PERSPECTIVE, CURSOR_ALTITUDE, CURSOR_LATITUDE, CURSOR_LONGITUDE, EAST_VIEW, MODE_2D, MODE_2Din3D, MODE_3D, NORTH_VIEW, SOUTH_VIEW, TOP_VIEW, WEST_VIEW |
| Fields inherited from class ucar.visad.display.DisplayMaster |
|---|
behavior, defaultMouseFunctions, log_, POINT_MODE |
| Constructor Summary | |
|---|---|
GlobeDisplay()
Constructs a new GlobeDisplay. |
|
GlobeDisplay(boolean offscreen,
Dimension dimension,
GraphicsDevice screen)
Constructs a new GlobeDisplay. |
|
| Method Summary | |
|---|---|
void |
addKeyboardBehavior(KeyboardBehavior behavior)
Add a keyboard behavior for this display |
void |
addVerticalMap(RealType newVertType)
Add a new mapping of this type to the vertical coordinate |
void |
centerAndZoom(EarthLocation el,
Real altitude,
double zoomFactor,
boolean animated,
boolean northUp)
Center and zoom to a particular point |
void |
checkClipDistance()
If we are in perspective view then set the clip distance shorter |
protected void |
cursorChange()
Handles a change to the cursor position. |
protected void |
cursorMoved()
Handles a change to the cursor position. |
void |
enableClipping(boolean clip)
Enable clipping of data at the box edges |
protected ScalarMap |
getAltitudeMap()
Accessor method for the ScalarMap for Altitude |
String |
getBottomViewName()
Accessor method. |
DisplayRealType |
getDisplayAltitudeType()
Accessor method for the DisplayAltitudeType |
CoordinateSystem |
getDisplayCoordinateSystem()
Get the display coordinate system that turns lat/lon/alt to x/y/z |
DisplayRealType |
getDisplayLatitudeType()
Accessor method for the DisplayLatitudeType |
DisplayRealType |
getDisplayLongitudeType()
Accessor method for the DisplayLongitudeType |
DisplayTupleType |
getDisplayTupleType()
Accessor method for the DisplayTupleType. |
EarthLocation |
getEarthLocation(double x,
double y,
double z,
boolean setZToZeroIfOverhead)
Get the EarthLocation of a point in XYZ space |
String |
getEastViewName()
Accessor method. |
Rectangle2D.Double |
getLatLonBox()
Get the latlon box of the displayed area. |
String |
getNorthViewName()
Accessor method. |
String |
getSouthViewName()
Accessor method. |
RealTuple |
getSpatialCoordinates(EarthLocation el)
Returns the spatial (XYZ) coordinates of the particular EarthLocation |
double[] |
getSpatialCoordinates(EarthLocation el,
double[] xyz,
double altitude)
Returns the spatial (XYZ) coordinates of the particular EarthLocation |
double[] |
getSpatialCoordinatesFromScreen(int x,
int y,
double zDepth)
Get spatial coordinates from screen |
boolean |
getStereoAvailable()
Determine if this MapDisplay can do stereo. |
String |
getTopViewName()
Accessor method. |
javax.media.j3d.View |
getView()
Get the View |
EarthLocation |
getViewPointEarthLocation()
Get the viewpoint earth location |
String |
getWestViewName()
Accessor method. |
protected void |
initializeClass()
Initialize the class. |
static void |
main(String[] args)
test by running java ucar.unidata.view.geoloc.NavigatedDisplay |
protected void |
pointerMoved(int x,
int y)
Handles a change in the position of the mouse-pointer. |
void |
removeVerticalMap(RealType vertType)
Remove a new mapping of this type to the vertical coordinate |
void |
resetScaleTranslate()
Reset the scale translate |
EarthLocation |
screenToEarthLocation(int x,
int y)
Get the earth coordinates from the screen coordinates |
void |
setClipDistanceFront(double value)
Set the front clip distance |
void |
setEyePosition(double position)
Method for setting the eye position for a 3D stereo view. |
void |
setMapArea(ucar.unidata.geoloc.ProjectionRect mapArea)
Set the map area to be displayed in the box. |
void |
setMapProjection(MapProjection mapProjection)
Define the map projection using a MapProjection type CoordinateSystem. |
void |
setPerspectiveView(boolean perspectiveView)
Set the view to perspective or parallel if this is a 3D display. |
void |
setVerticalRange(double min,
double max)
Set the range of the vertical coordinate |
void |
setVerticalRangeUnit(Unit newUnit)
Set the Unit of the vertical range |
void |
setView(int view)
Set the view for 3D. |
| Methods inherited from class java.lang.Object |
|---|
clone, getClass, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static String BOTTOM_VIEW_NAME
public static String NORTH_VIEW_NAME
public static String EAST_VIEW_NAME
public static String TOP_VIEW_NAME
public static String SOUTH_VIEW_NAME
public static String WEST_VIEW_NAME
public static final double EARTH_RADIUS
| Constructor Detail |
|---|
public GlobeDisplay()
throws VisADException,
RemoteException
VisADException - Couldn't create necessary VisAD object
RemoteException - Couldn't create a remote object
public GlobeDisplay(boolean offscreen,
Dimension dimension,
GraphicsDevice screen)
throws VisADException,
RemoteException
offscreen - true for an offscreen displaydimension - size of the displayscreen - screen device
VisADException - Couldn't create necessary VisAD object
RemoteException - Couldn't create a remote object| Method Detail |
|---|
protected void initializeClass()
throws VisADException,
RemoteException
initializeClass in class NavigatedDisplayRemoteException - Java RMI problem
VisADException - VisAD problempublic String getTopViewName()
getTopViewName in class NavigatedDisplaypublic String getBottomViewName()
getBottomViewName in class NavigatedDisplaypublic String getNorthViewName()
getNorthViewName in class NavigatedDisplaypublic String getEastViewName()
getEastViewName in class NavigatedDisplaypublic String getSouthViewName()
getSouthViewName in class NavigatedDisplaypublic String getWestViewName()
getWestViewName in class NavigatedDisplaypublic void addKeyboardBehavior(KeyboardBehavior behavior)
addKeyboardBehavior in class DisplayMasterbehavior - behavior to add
protected void cursorMoved()
throws VisADException,
RemoteException
cursorMoved in class NavigatedDisplayVisADException - VisAD failure.
RemoteException - Java RMI failure.
public EarthLocation screenToEarthLocation(int x,
int y)
throws VisADException
screenToEarthLocation in class NavigatedDisplayx - screen x positiony - screen y position
VisADException - problem getting coordinates
protected void pointerMoved(int x,
int y)
throws UnitException,
VisADException,
RemoteException
pointerMoved in class NavigatedDisplayx - x mouse locationy - y mouse location
RemoteException - Java RMI problem
UnitException - Unit conversion problem
VisADException - VisAD problem
public void setMapArea(ucar.unidata.geoloc.ProjectionRect mapArea)
throws VisADException,
RemoteException
setMapArea in class NavigatedDisplaymapArea - ProjectionRect describing the map area to be displayed
VisADException - invalid navigation or VisAD error
RemoteException - Couldn't create a remote object
public void setMapProjection(MapProjection mapProjection)
throws VisADException,
RemoteException
setMapProjection in class NavigatedDisplaymapProjection - map projection coordinate system
VisADException - Couldn't create necessary VisAD object
RemoteException - Couldn't create a remote objectpublic DisplayRealType getDisplayLatitudeType()
getDisplayLatitudeType in class NavigatedDisplaypublic DisplayRealType getDisplayLongitudeType()
getDisplayLongitudeType in class NavigatedDisplaypublic DisplayRealType getDisplayAltitudeType()
getDisplayAltitudeType in class NavigatedDisplaypublic DisplayTupleType getDisplayTupleType()
protected ScalarMap getAltitudeMap()
getAltitudeMap in class NavigatedDisplay
protected void cursorChange()
throws VisADException,
RemoteException
VisADException - VisAD failure.
RemoteException - Java RMI failure.
public void resetScaleTranslate()
throws VisADException,
RemoteException
resetScaleTranslate in class NavigatedDisplayRemoteException - Java RMI problem
VisADException - matrix problempublic void setView(int view)
NORTH
_________
W | | E
E | TOP | A
S | MOTTOB| S
T |_______| T
SOUTH
setView in class NavigatedDisplayview - one of the static view fields (NORTH_VIEW, SOUTH_VIEW, ..
etc). In this display, NORTH is the Western Hemisphere,
SOUTH is the Eastern Hemisphere, EAST is the Pacific
region and WEST is the Atlantic Regionpublic void enableClipping(boolean clip)
enableClipping in class NavigatedDisplayclip - true to turn clipping on, otherwise offpublic javax.media.j3d.View getView()
getView in class NavigatedDisplaypublic void setPerspectiveView(boolean perspectiveView)
setPerspectiveView in class NavigatedDisplayperspectiveView - true for perspective view
public EarthLocation getEarthLocation(double x,
double y,
double z,
boolean setZToZeroIfOverhead)
getEarthLocation in class NavigatedDisplayx - x coord.y - y coord.z - z coord.setZToZeroIfOverhead - If in the overhead view then set Z to 0
public void centerAndZoom(EarthLocation el,
Real altitude,
double zoomFactor,
boolean animated,
boolean northUp)
throws VisADException,
RemoteException
centerAndZoom in class NavigatedDisplayel - the earth locationaltitude - the altitudezoomFactor - zoom factoranimated - true to animatenorthUp - rotate so north is up
RemoteException - Couldn't create a remote object
VisADException - Couldn't create necessary VisAD object
public double[] getSpatialCoordinatesFromScreen(int x,
int y,
double zDepth)
getSpatialCoordinatesFromScreen in class NavigatedDisplayx - screen Xy - screen YzDepth - the z depth
public RealTuple getSpatialCoordinates(EarthLocation el)
getSpatialCoordinates in class NavigatedDisplayel - earth location (lat/lon/alt) to translate
public double[] getSpatialCoordinates(EarthLocation el,
double[] xyz,
double altitude)
throws VisADException,
RemoteException
getSpatialCoordinates in class NavigatedDisplayel - earth location (lat/lon/alt) to translatexyz - Where to put the valuealtitude - the altitude
RemoteException - On badness
VisADException - On badness
public void addVerticalMap(RealType newVertType)
throws VisADException,
RemoteException
addVerticalMap in class NavigatedDisplaynewVertType - RealType of map
RemoteException - Java RMI problem
VisADException - VisAD problem
public void removeVerticalMap(RealType vertType)
throws VisADException,
RemoteException
removeVerticalMap in class NavigatedDisplayvertType - RealType of map
RemoteException - Java RMI problem
VisADException - VisAD problem
public void setVerticalRangeUnit(Unit newUnit)
throws VisADException,
RemoteException
setVerticalRangeUnit in class NavigatedDisplaynewUnit - unit of range
RemoteException - Java RMI problem
VisADException - VisAD problem
public void setVerticalRange(double min,
double max)
throws VisADException,
RemoteException
setVerticalRange in class NavigatedDisplaymin - minimum value for vertical axismax - maximum value for vertical axis
RemoteException - Java RMI problem
VisADException - VisAD problempublic boolean getStereoAvailable()
getStereoAvailable in class DisplayMasterpublic void setEyePosition(double position)
setEyePosition in class DisplayMasterposition - x position of each eye (left negative, right positive).
public Rectangle2D.Double getLatLonBox()
throws VisADException,
RemoteException
getLatLonBox in class NavigatedDisplayRemoteException - On badness
VisADException - On badnesspublic CoordinateSystem getDisplayCoordinateSystem()
getDisplayCoordinateSystem in class NavigatedDisplaypublic EarthLocation getViewPointEarthLocation()
public static void main(String[] args)
throws Exception
args - not used
Exception - problem creating the displaypublic void setClipDistanceFront(double value)
setClipDistanceFront in class NavigatedDisplayvalue - clip distancepublic void checkClipDistance()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||