public class Curtain extends AbstractAirspace
Modifier and Type | Class and Description |
---|---|
protected static class |
Curtain.CurtainGeometry |
protected static class |
Curtain.SectionRenderInfo |
AbstractAirspace.AirspaceInfo
Modifier and Type | Field and Description |
---|---|
protected boolean |
applyPositionAltitude |
protected java.util.List<LatLon> |
locations |
protected java.lang.String |
pathType |
protected double |
splitThreshold |
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 |
---|
Curtain() |
Curtain(AirspaceAttributes attributes) |
Curtain(Curtain source) |
Curtain(java.lang.Iterable<? extends LatLon> locations) |
Modifier and Type | Method and Description |
---|---|
protected void |
addLocations(java.lang.Iterable<? extends LatLon> newLocations) |
protected Extent |
computeExtent(Globe globe,
double verticalExaggeration) |
protected java.util.List<Vec4> |
computeMinimalGeometry(Globe globe,
double verticalExaggeration) |
protected Vec4 |
computeReferenceCenter(DrawContext dc) |
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,
java.lang.String drawStyle) |
protected void |
doRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context) |
protected void |
drawCurtainFill(DrawContext dc,
int count,
LatLon[] locations,
java.lang.String pathType,
double splitThreshold,
double[] altitudes,
boolean[] terrainConformant,
Vec4 referenceCenter) |
protected void |
drawCurtainOutline(DrawContext dc,
int count,
LatLon[] locations,
java.lang.String pathType,
double splitThreshold,
double[] altitudes,
boolean[] terrainConformant,
Vec4 referenceCenter) |
protected Curtain.CurtainGeometry |
getCurtainGeometry(DrawContext dc,
int count,
LatLon[] locations,
java.lang.String pathType,
double splitThreshold,
double[] altitudes,
boolean[] terrainConformant,
Vec4 referenceCenter) |
java.lang.Iterable<LatLon> |
getLocations()
Returns the curtain's locations.
|
java.lang.String |
getPathType() |
Position |
getReferencePosition()
A position associated with the object that indicates its aggregate geographic position.
|
protected int |
getSectionFillDrawMode() |
protected int |
getSectionFillIndexCount(int pillars) |
protected int |
getSectionOutlineDrawMode() |
protected int |
getSectionOutlineIndexCount(int pillars) |
protected int |
getSectionPillarCount(DrawContext dc,
LatLon begin,
LatLon end,
java.lang.String pathType,
double splitThreshold) |
protected int |
getSectionVertexCount(int pillars) |
protected double |
getSplitThreshold() |
boolean |
isApplyPositionAltitude() |
protected void |
makeCurtainGeometry(DrawContext dc,
int count,
LatLon[] locations,
java.lang.String pathType,
double splitThreshold,
double[] altitudes,
boolean[] terrainConformant,
Vec4 referenceCenter,
Curtain.CurtainGeometry dest) |
protected void |
makeDefaultDetailLevels() |
protected void |
makeSectionFillIndices(int pillars,
int vertexPos,
int indexPos,
int[] dest) |
protected void |
makeSectionInfo(DrawContext dc,
int count,
LatLon[] locations,
java.lang.String pathType,
double splitThreshold,
Curtain.SectionRenderInfo[] ri,
int[] counts) |
protected void |
makeSectionOutlineIndices(int pillars,
int vertexPos,
int indexPos,
int[] dest) |
protected void |
makeSectionVertices(DrawContext dc,
LatLon begin,
LatLon end,
java.lang.String pathType,
double[] altitude,
boolean[] terrainConformant,
int pillars,
int vertexPos,
float[] dest,
Vec4 referenceCenter) |
protected void |
makeSegment(Globe globe,
LatLon locA,
LatLon locB,
java.util.List<LatLon> tessellatedLocations) |
protected void |
makeTessellatedLocations(Globe globe,
java.util.List<LatLon> tessellatedLocations) |
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 |
setApplyPositionAltitude(boolean applyPositionAltitude) |
void |
setLocations(java.lang.Iterable<? extends LatLon> locations)
Sets the curtain's locations, in geographic coordinates.
|
void |
setPathType(java.lang.String pathType) |
protected void |
setSplitThreshold(double splitThreshold) |
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, computeExtent, computeEyeDistance, 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, 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 boolean applyPositionAltitude
protected java.util.List<LatLon> locations
protected java.lang.String pathType
protected double splitThreshold
public Curtain()
public Curtain(AirspaceAttributes attributes)
public Curtain(Curtain source)
public Curtain(java.lang.Iterable<? extends LatLon> locations)
protected void addLocations(java.lang.Iterable<? extends LatLon> newLocations)
protected Extent computeExtent(Globe globe, double verticalExaggeration)
computeExtent
in class AbstractAirspace
protected java.util.List<Vec4> computeMinimalGeometry(Globe globe, double verticalExaggeration)
computeMinimalGeometry
in class AbstractAirspace
protected Vec4 computeReferenceCenter(DrawContext dc)
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, java.lang.String drawStyle)
doRenderGeometry
in class AbstractAirspace
protected void doRestoreState(RestorableSupport rs, RestorableSupport.StateObject context)
doRestoreState
in class AbstractAirspace
protected void drawCurtainFill(DrawContext dc, int count, LatLon[] locations, java.lang.String pathType, double splitThreshold, double[] altitudes, boolean[] terrainConformant, Vec4 referenceCenter)
protected void drawCurtainOutline(DrawContext dc, int count, LatLon[] locations, java.lang.String pathType, double splitThreshold, double[] altitudes, boolean[] terrainConformant, Vec4 referenceCenter)
protected Curtain.CurtainGeometry getCurtainGeometry(DrawContext dc, int count, LatLon[] locations, java.lang.String pathType, double splitThreshold, double[] altitudes, boolean[] terrainConformant, Vec4 referenceCenter)
public java.lang.Iterable<LatLon> getLocations()
public java.lang.String getPathType()
public Position getReferencePosition()
Movable
protected int getSectionFillDrawMode()
protected int getSectionFillIndexCount(int pillars)
protected int getSectionOutlineDrawMode()
protected int getSectionOutlineIndexCount(int pillars)
protected int getSectionPillarCount(DrawContext dc, LatLon begin, LatLon end, java.lang.String pathType, double splitThreshold)
protected int getSectionVertexCount(int pillars)
protected double getSplitThreshold()
public boolean isApplyPositionAltitude()
protected void makeCurtainGeometry(DrawContext dc, int count, LatLon[] locations, java.lang.String pathType, double splitThreshold, double[] altitudes, boolean[] terrainConformant, Vec4 referenceCenter, Curtain.CurtainGeometry dest)
protected void makeDefaultDetailLevels()
protected void makeSectionFillIndices(int pillars, int vertexPos, int indexPos, int[] dest)
protected void makeSectionInfo(DrawContext dc, int count, LatLon[] locations, java.lang.String pathType, double splitThreshold, Curtain.SectionRenderInfo[] ri, int[] counts)
protected void makeSectionOutlineIndices(int pillars, int vertexPos, int indexPos, int[] dest)
protected void makeSectionVertices(DrawContext dc, LatLon begin, LatLon end, java.lang.String pathType, double[] altitude, boolean[] terrainConformant, int pillars, int vertexPos, float[] dest, Vec4 referenceCenter)
protected void makeSegment(Globe globe, LatLon locA, LatLon locB, java.util.List<LatLon> tessellatedLocations)
protected void makeTessellatedLocations(Globe globe, java.util.List<LatLon> tessellatedLocations)
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 setApplyPositionAltitude(boolean applyPositionAltitude)
public void setLocations(java.lang.Iterable<? extends LatLon> locations)
locations
- a list of geographic coordinates (latitude and longitude) specifying the upper edge of the
shape.java.lang.IllegalArgumentException
- if the locations list is null or contains fewer than two points.public void setPathType(java.lang.String pathType)
protected void setSplitThreshold(double splitThreshold)
protected void updateSurfaceShape(DrawContext dc, SurfaceShape shape)
AbstractAirspace
updateSurfaceShape
in class AbstractAirspace
dc
- the current drawing context.shape
- the surface shape to update.