public class SurfacePolyline extends AbstractSurfaceShape implements Exportable
AbstractSurfaceShape.GeometryKey, AbstractSurfaceShape.SurfaceShapeStateKey
AbstractSurfaceObject.CacheEntry, AbstractSurfaceObject.SurfaceObjectStateKey
Modifier and Type | Field and Description |
---|---|
protected boolean |
closed |
protected java.lang.Iterable<? extends LatLon> |
locations |
activeAttrs, activeGeometry, activeOutlineGeometry, areaMeasurer, areaMeasurerLastModifiedTime, DEFAULT_HIGHLIGHT_MATERIAL, DEFAULT_INTERIOR_MATERIAL, DEFAULT_MAX_EDGE_INTERVALS, DEFAULT_MIN_EDGE_INTERVALS, DEFAULT_OUTLINE_MATERIAL, DEFAULT_PATH_TYPE, DEFAULT_TEXELS_PER_EDGE_INTERVAL, defaultAttrs, dragEnabled, draggableSupport, geometryCache, highlightAttrs, highlighted, maxEdgeIntervals, minEdgeIntervals, normalAttrs, pathType, sectorCache, stackHandler, texelsPerEdgeInterval, texture, vertexBuffer
delegateOwner, drawBoundingSectors, enableBatchPicking, extentCache, lastModifiedTime, nextUniqueId, pickLayer, pickSupport, pickTileBuilder, uniqueId, visible
FORMAT_NOT_SUPPORTED, FORMAT_PARTIALLY_SUPPORTED, FORMAT_SUPPORTED
Constructor and Description |
---|
SurfacePolyline()
Constructs a new surface polyline with the default attributes and no locations.
|
SurfacePolyline(java.lang.Iterable<? extends LatLon> iterable)
Constructs a new surface polyline with the default attributes and the specified iterable of locations.
|
SurfacePolyline(ShapeAttributes normalAttrs)
Constructs a new surface polyline with the specified normal (as opposed to highlight) attributes and no
locations.
|
SurfacePolyline(ShapeAttributes normalAttrs,
java.lang.Iterable<? extends LatLon> iterable)
Constructs a new surface polyline with the specified normal (as opposed to highlight) attributes and the
specified iterable of locations.
|
SurfacePolyline(SurfacePolyline source)
Creates a shallow copy of the specified source shape.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
canContainPole()
Indicates whether the shape is a closed polygon that can enclose a pole, or an open path that cannot.
|
protected java.util.List<java.util.List<LatLon>> |
createGeometry(Globe globe,
double edgeIntervalsPerDegree) |
protected void |
doGetRestorableState(RestorableSupport rs,
RestorableSupport.StateObject context) |
protected void |
doMoveTo(Globe globe,
Position oldReferencePosition,
Position newReferencePosition) |
protected void |
doMoveTo(Position oldReferencePosition,
Position newReferencePosition) |
protected void |
doRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context) |
protected void |
drawInterior(DrawContext dc,
SurfaceTileDrawContext sdc) |
protected void |
exportAsKML(java.lang.Object output)
Export the polyline to KML as a
<Placemark> element. |
java.lang.Iterable<? extends LatLon> |
getLocations() |
java.lang.Iterable<? extends LatLon> |
getLocations(Globe globe)
Returns the shape's locations as they appear on the specified
globe , or null if the shape has no
locations. |
Position |
getReferencePosition()
A position associated with the object that indicates its aggregate geographic position.
|
boolean |
isClosed() |
protected void |
legacyRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context)
Restores state values from previous versions of the SurfaceShape state XML.
|
void |
setClosed(boolean closed) |
void |
setLocations(java.lang.Iterable<? extends LatLon> iterable) |
addIntermediateLocations, applyInteriorState, applyInteriorTextureState, applyModelviewTransform, applyOutlineState, beginDrawing, clearCaches, combine, combineBounds, combineContours, computeEdgeIntervalsPerDegree, computeEdgeIntervalsPerDegree, computeSectors, computeSectors, containsPole, createActiveAttributes, createGeometry, createGeometryKey, cutAlongDateLine, determineActiveAttributes, determineActiveGeometry, doCombineContour, doCombineContours, doDrag, doDrawGeographic, doTessellateInterior, drag, drawGeographic, drawLineStrip, drawOutline, endDrawing, export, generateIntermediateLocations, getActiveAttributes, getActiveGeometry, getArea, getArea, getAttributes, getCachedGeometry, getExtent, getHeight, getHighlightAttributes, getInteriorTexture, getLength, getMinAndMaxEdgeIntervals, getPathType, getPerimeter, getRestorableState, getSectors, getStateKey, getTexelsPerEdgeInterval, getWidth, handleUnsuccessfulInteriorTessellation, isDragEnabled, isExportFormatSupported, isHighlighted, isSectorEmpty, makeOrderedPreRenderable, move, moveTo, moveTo, pathTypeFromString, repeatAroundDateline, restoreState, setAttributes, setDragEnabled, setHighlightAttributes, setHighlighted, setMinAndMaxEdgeIntervals, setPathType, setTexelsPerEdgeInterval, setupAreaMeasurer, tessellateInterior, tessellateInteriorVertices
buildPickRepresentation, computeExtent, computeExtent, createPickedObject, createPickTileBuilder, drawBoundingSectors, drawOrderedRenderable, drawPickRepresentation, getDelegateOwner, getDistanceFromEye, getExtent, getUniqueId, intersectsFrustum, intersectsPickFrustum, intersectsVisibleSector, isDrawBoundingSectors, isEnableBatchPicking, isVisible, makeOrderedRenderable, nextUniqueId, onShapeChanged, pick, pickBatched, pickOrderedRenderable, preRender, render, setDelegateOwner, setDrawBoundingSectors, setEnableBatchPicking, setVisible, updateModifiedTime
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
export, isExportFormatSupported
getDelegateOwner, getDistanceFromEye, getExtent, isEnableBatchPicking, isVisible, pick, preRender, setDelegateOwner, setEnableBatchPicking, setVisible
render
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues
protected boolean closed
protected java.lang.Iterable<? extends LatLon> locations
public SurfacePolyline()
public SurfacePolyline(java.lang.Iterable<? extends LatLon> iterable)
Note: If fewer than two locations is specified, no polyline is drawn.
iterable
- the polyline locations.java.lang.IllegalArgumentException
- if the locations iterable is null.public SurfacePolyline(ShapeAttributes normalAttrs)
normalAttrs
- the normal attributes. May be null, in which case default attributes are used.public SurfacePolyline(ShapeAttributes normalAttrs, java.lang.Iterable<? extends LatLon> iterable)
Note: If fewer than two locations is specified, no polyline is drawn.
normalAttrs
- the normal attributes. May be null, in which case default attributes are used.iterable
- the polyline locations.java.lang.IllegalArgumentException
- if the locations iterable is null.public SurfacePolyline(SurfacePolyline source)
source
- the shape to copy.protected boolean canContainPole()
canContainPole
in class AbstractSurfaceShape
protected java.util.List<java.util.List<LatLon>> createGeometry(Globe globe, double edgeIntervalsPerDegree)
createGeometry
in class AbstractSurfaceShape
protected void doGetRestorableState(RestorableSupport rs, RestorableSupport.StateObject context)
doGetRestorableState
in class AbstractSurfaceShape
protected void doMoveTo(Globe globe, Position oldReferencePosition, Position newReferencePosition)
doMoveTo
in class AbstractSurfaceShape
protected void doMoveTo(Position oldReferencePosition, Position newReferencePosition)
doMoveTo
in class AbstractSurfaceShape
protected void doRestoreState(RestorableSupport rs, RestorableSupport.StateObject context)
doRestoreState
in class AbstractSurfaceShape
protected void drawInterior(DrawContext dc, SurfaceTileDrawContext sdc)
drawInterior
in class AbstractSurfaceShape
protected void exportAsKML(java.lang.Object output) throws java.io.IOException, javax.xml.stream.XMLStreamException
<Placemark>
element. The output
object will receive the data.
This object must be one of: java.io.Writer java.io.OutputStream javax.xml.stream.XMLStreamWriterexportAsKML
in class AbstractSurfaceShape
output
- Object to receive the generated KML.javax.xml.stream.XMLStreamException
- If an exception occurs while writing the KMLjava.io.IOException
- if an exception occurs while exporting the data.AbstractSurfaceShape.export(String, Object)
public java.lang.Iterable<? extends LatLon> getLocations()
public java.lang.Iterable<? extends LatLon> getLocations(Globe globe)
SurfaceShape
globe
, or null if the shape has no
locations.getLocations
in interface SurfaceShape
globe
- the globe the shape is related to.public Position getReferencePosition()
Movable
getReferencePosition
in interface Movable
getReferencePosition
in interface Movable2
getReferencePosition
in class AbstractSurfaceShape
public boolean isClosed()
protected void legacyRestoreState(RestorableSupport rs, RestorableSupport.StateObject context)
AbstractSurfaceShape
AbstractSurfaceShape.doRestoreState(gov.nasa.worldwind.util.RestorableSupport,
gov.nasa.worldwind.util.RestorableSupport.StateObject)
.legacyRestoreState
in class AbstractSurfaceShape
rs
- RestorableSupport object which contains the state value properties.context
- active context in the RestorableSupport to read state from.public void setClosed(boolean closed)
public void setLocations(java.lang.Iterable<? extends LatLon> iterable)