public class SphereAirspace extends AbstractAirspace
AbstractAirspace.AirspaceInfo
Modifier and Type | Field and Description |
---|---|
protected static int |
DEFAULT_SUBDIVISIONS |
activeAttributes, airspaceInfo, alwaysOnTop, ARC_SLICES, attributes, currentInfo, DEFAULT_HIGHLIGHT_MATERIAL, DEFAULT_INTERIOR_MATERIAL, DEFAULT_OUTLINE_MATERIAL, DEFAULT_OUTLINE_PICK_WIDTH, defaultAttributes, delegateOwner, detailLevels, DISABLE_TERRAIN_CONFORMANCE, dragEnabled, draggableSupport, drawSurfaceShape, elevationMap, enableBatchPicking, enableBatchRendering, enableDepthOffset, enableLevelOfDetail, EXPIRY_TIME, expiryTime, frameTimeStamp, GEOMETRY_CACHE_KEY, GEOMETRY_CACHE_NAME, geometryBuilder, GLOBE_KEY, groundReference, highlightAttributes, highlighted, LENGTH_SLICES, LOOPS, lowerAltitude, lowerAltitudeDatum, lowerTerrainConforming, maxExpiryTime, minExpiryTime, mustRegenerateSurfaceShape, outlinePickWidth, outlineShapeRenderer, pickLayer, pickSupport, PILLARS, rand, SLICES, SPLIT_THRESHOLD, STACKS, SUBDIVISIONS, surfaceShape, upperAltitude, upperAltitudeDatum, upperTerrainConforming, VERTICAL_EXAGGERATION, visible
DRAW_STYLE_FILL, DRAW_STYLE_OUTLINE
Constructor and Description |
---|
SphereAirspace() |
SphereAirspace(AirspaceAttributes attributes) |
SphereAirspace(LatLon location,
double radius) |
SphereAirspace(SphereAirspace source) |
Modifier and Type | Method and Description |
---|---|
protected Sphere |
computeExtent(DrawContext dc) |
protected Extent |
computeExtent(Globe globe,
double verticalExaggeration) |
protected double |
computeEyeDistance(DrawContext dc) |
protected List<Vec4> |
computeMinimalGeometry(Globe globe,
double verticalExaggeration) |
protected SurfaceShape |
createSurfaceShape()
Returns a
SurfaceShape that corresponds to this Airspace and is used for drawing on 2D globes. |
protected void |
doGetRestorableState(RestorableSupport rs,
RestorableSupport.StateObject context) |
protected void |
doMoveTo(Globe globe,
Position oldRef,
Position newRef) |
protected void |
doMoveTo(Position oldRef,
Position newRef) |
protected void |
doRenderGeometry(DrawContext dc,
String drawStyle) |
protected void |
doRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context) |
protected void |
drawSphere(DrawContext dc) |
protected void |
drawUnitSphere(DrawContext dc,
int subdivisions) |
Extent |
getExtent(DrawContext dc)
Returns this SphereAirspace's
Extent for the specified DrawContext. |
LatLon |
getLocation()
Returns the center location of the sphere.
|
double |
getRadius()
Returns the radius of the sphere in meters.
|
Position |
getReferencePosition()
A position associated with the object that indicates its aggregate geographic position.
|
protected int |
getSubdivisions() |
protected void |
makeSphere(double radius,
int subdivisions,
Geometry dest) |
protected void |
regenerateSurfaceShape(DrawContext dc,
SurfaceShape shape)
Regenerates surface shape geometry prior to picking and rendering the 2D shape used to represent this Airspace on
2D globes.
|
void |
setLocation(LatLon location)
Sets the center location of the sphere.
|
void |
setRadius(double radius)
Sets the radius of the sphere in meters.
|
protected void |
setSubdivisions(int subdivisions) |
protected void |
updateSurfaceShape(DrawContext dc,
SurfaceShape shape)
Sets surface shape parameters prior to picking and rendering the 2D shape used to represent this Airspace on 2D
globes.
|
addDetailLevels, adjustForGroundReference, beginRendering, clearElevationMap, computeDetailLevel, computeElevationAt, computeMinimalGeometry, computePointFromPosition, computeReferencePosition, createPickedObject, determineActiveAttributes, doDrag, doDrawOrderedRenderable, drag, drawBatched, drawGeometry, drawInterior, drawOrderedRenderable, drawOutline, endRendering, getActiveAttributes, getAirspaceInfo, getAltitudeDatum, getAltitudes, getAltitudes, getAttributes, getDelegateOwner, getDetailLevels, getDistanceFromEye, getExpiryRange, getExpiryTime, getExtent, getGeometryBuilder, getGeometryCache, getGroundReference, getHighlightAttributes, getOutlinePickWidth, getRestorableState, invalidateAirspaceData, isAirspaceCollapsed, isAirspaceVisible, isAlwaysOnTop, isDragEnabled, isDrawSurfaceShape, isEnableBatchPicking, isEnableBatchRendering, isEnableDepthOffset, isEnableLevelOfDetail, isExpired, isHighlighted, isTerrainConforming, isVisible, makeExtremePoints, makeOrderedRenderable, move, moveTo, moveTo, mustDrawInterior, mustDrawOutline, nextExpiryTime, pick, preRender, render, restoreState, setAltitude, setAltitudeDatum, setAltitudes, setAlwaysOnTop, setAttributes, setAttributes, setDelegateOwner, setDetailLevels, setDragEnabled, setDrawSurfaceShape, setEnableBatchPicking, setEnableBatchRendering, setEnableDepthOffset, setEnableLevelOfDetail, setExpiryRange, setExpiryTime, setGeometryBuilder, setGroundReference, setHighlightAttributes, setHighlightAttributes, setHighlighted, setOutlinePickWidth, setTerrainConforming, setTerrainConforming, setVisible, updateExpiryCriteria
onMessage, propertyChange
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
protected static final int DEFAULT_SUBDIVISIONS
public SphereAirspace()
public SphereAirspace(AirspaceAttributes attributes)
public SphereAirspace(LatLon location, double radius)
public SphereAirspace(SphereAirspace source)
protected Sphere computeExtent(DrawContext dc)
computeExtent
in class AbstractAirspace
protected Extent computeExtent(Globe globe, double verticalExaggeration)
computeExtent
in class AbstractAirspace
protected double computeEyeDistance(DrawContext dc)
computeEyeDistance
in class AbstractAirspace
protected List<Vec4> computeMinimalGeometry(Globe globe, double verticalExaggeration)
computeMinimalGeometry
in class AbstractAirspace
protected SurfaceShape createSurfaceShape()
AbstractAirspace
SurfaceShape
that corresponds to this Airspace and is used for drawing on 2D globes.createSurfaceShape
in class AbstractAirspace
protected void doGetRestorableState(RestorableSupport rs, RestorableSupport.StateObject context)
doGetRestorableState
in class AbstractAirspace
protected void doMoveTo(Globe globe, Position oldRef, Position newRef)
doMoveTo
in class AbstractAirspace
protected void doMoveTo(Position oldRef, Position newRef)
doMoveTo
in class AbstractAirspace
protected void doRenderGeometry(DrawContext dc, String drawStyle)
doRenderGeometry
in class AbstractAirspace
protected void doRestoreState(RestorableSupport rs, RestorableSupport.StateObject context)
doRestoreState
in class AbstractAirspace
protected void drawSphere(DrawContext dc)
protected void drawUnitSphere(DrawContext dc, int subdivisions)
public Extent getExtent(DrawContext dc)
Extent
for the specified DrawContext. This
overrides AbstractAirspace.getExtent(gov.nasa.worldwind.render.DrawContext)
in order to bypass the superclass' extent caching. Unlike other Airspace's Extents, SphereAirspace's Extent is a
perfect fitting Sphere
, who's center point depends on the current surface
geometry. For this reason SphereAirspace's exact bounding volume can be easily computed, and should not be
cached.getExtent
in interface Airspace
getExtent
in class AbstractAirspace
dc
- the current DrawContext.IllegalArgumentException
- if the DrawContext is null, or if the Globe held by the DrawContext is null.public LatLon getLocation()
public double getRadius()
public Position getReferencePosition()
Movable
protected int getSubdivisions()
protected void makeSphere(double radius, int subdivisions, Geometry dest)
protected void regenerateSurfaceShape(DrawContext dc, SurfaceShape shape)
AbstractAirspace
regenerateSurfaceShape
in class AbstractAirspace
dc
- the current drawing context.shape
- the surface shape to regenerate.public void setLocation(LatLon location)
location
- the location of the sphere.IllegalArgumentException
- if location
is nullpublic void setRadius(double radius)
radius
- the radius of the sphere.IllegalArgumentException
- if radius
is less than zeroprotected void setSubdivisions(int subdivisions)
protected void updateSurfaceShape(DrawContext dc, SurfaceShape shape)
AbstractAirspace
updateSurfaceShape
in class AbstractAirspace
dc
- the current drawing context.shape
- the surface shape to update.