gov.nasa.worldwind.render
Class SurfacePolyline
java.lang.Object
gov.nasa.worldwind.avlist.AVListImpl
gov.nasa.worldwind.WWObjectImpl
gov.nasa.worldwind.render.AbstractSurfaceObject
gov.nasa.worldwind.render.AbstractSurfaceShape
gov.nasa.worldwind.render.SurfacePolyline
- All Implemented Interfaces:
- AVList, MessageListener, Exportable, ExtentHolder, MeasurableArea, MeasurableLength, Movable, Highlightable, OrderedRenderable, PreRenderable, Renderable, SurfaceObject, SurfaceShape, Restorable, WWObject, PropertyChangeListener, EventListener
public class SurfacePolyline
- extends AbstractSurfaceShape
- implements Exportable
| Fields inherited from class gov.nasa.worldwind.render.AbstractSurfaceShape |
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, geometryCache, highlightAttrs, highlighted, maxEdgeIntervals, minEdgeIntervals, normalAttrs, pathType, sectorCache, stackHandler, texelsPerEdgeInterval, texture, vertexBuffer |
| Fields inherited from class gov.nasa.worldwind.render.AbstractSurfaceObject |
delegateOwner, drawBoundingSectors, enableBatchPicking, extentCache, lastModifiedTime, nextUniqueId, pickLayer, pickSupport, pickTileBuilder, pickTiles, uniqueId, visible |
|
Constructor Summary |
SurfacePolyline()
Constructs a new surface polyline with the default attributes and no locations. |
SurfacePolyline(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,
Iterable<? extends LatLon> iterable)
Constructs a new surface polyline with the specified normal (as opposed to highlight) attributes and the
specified iterable of locations. |
| Methods inherited from class gov.nasa.worldwind.render.AbstractSurfaceShape |
addIntermediateLocations, applyInteriorState, applyInteriorTextureState, applyModelviewTransform, applyOutlineState, beginDrawing, clearCaches, computeEdgeIntervalsPerDegree, computeSectors, computeSectors, containsPole, createActiveAttributes, createGeometryKey, cutAlongDateLine, determineActiveAttributes, determineActiveGeometry, doDrawGeographic, doTessellateInterior, drawGeographic, drawOutline, endDrawing, export, generateIntermediateLocations, getActiveAttributes, getActiveGeometry, getArea, getArea, getAttributes, getCachedGeometry, getExtent, getHeight, getHighlightAttributes, getInteriorTexture, getLength, getMinAndMaxEdgeIntervals, getPathType, getPerimeter, getRestorableState, getSectors, getStateKey, getTexelsPerEdgeInterval, getWidth, handleUnsuccessfulInteriorTessellation, intersectionWithMeridian, isExportFormatSupported, isHighlighted, isSectorEmpty, makeOrderedPreRenderable, move, moveTo, onShapeChanged, pathTypeFromString, repeatAroundDateline, restoreState, setAttributes, setHighlightAttributes, setHighlighted, setMinAndMaxEdgeIntervals, setPathType, setTexelsPerEdgeInterval, setupAreaMeasurer, tessellateInterior, tessellateInteriorVertices |
| Methods inherited from class gov.nasa.worldwind.render.AbstractSurfaceObject |
buildPickRepresentation, computeExtent, computeExtent, createPickedObject, createPickTileBuilder, drawBoundingSectors, drawOrderedRenderable, drawPickRepresentation, getDelegateOwner, getDistanceFromEye, getExtent, getUniqueId, intersectsFrustum, intersectsPickFrustum, intersectsVisibleSector, isDrawBoundingSectors, isEnableBatchPicking, isVisible, makeOrderedRenderable, nextUniqueId, pick, pickBatched, pickOrderedRenderable, preRender, render, setDelegateOwner, setDrawBoundingSectors, setEnableBatchPicking, setVisible, updateModifiedTime |
| Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl |
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 |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface gov.nasa.worldwind.avlist.AVList |
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues |
closed
protected boolean closed
locations
protected Iterable<? extends LatLon> locations
SurfacePolyline
public SurfacePolyline()
- Constructs a new surface polyline with the default attributes and no locations.
SurfacePolyline
public SurfacePolyline(Iterable<? extends LatLon> iterable)
- Constructs a new surface polyline with the default attributes and the specified iterable of locations.
Note: If fewer than two locations is specified, no polyline is drawn.
- Parameters:
iterable - the polyline locations.
- Throws:
IllegalArgumentException - if the locations iterable is null.
SurfacePolyline
public SurfacePolyline(ShapeAttributes normalAttrs)
- Constructs a new surface polyline with the specified normal (as opposed to highlight) attributes and no
locations. Modifying the attribute reference after calling this constructor causes this shape's appearance to
change accordingly.
- Parameters:
normalAttrs - the normal attributes. May be null, in which case default attributes are used.
SurfacePolyline
public SurfacePolyline(ShapeAttributes normalAttrs,
Iterable<? extends LatLon> iterable)
- Constructs a new surface polyline with the specified normal (as opposed to highlight) attributes and the
specified iterable of locations. Modifying the attribute reference after calling this constructor causes this
shape's appearance to change accordingly.
Note: If fewer than two locations is specified, no polyline is drawn.
- Parameters:
normalAttrs - the normal attributes. May be null, in which case default attributes are used.iterable - the polyline locations.
- Throws:
IllegalArgumentException - if the locations iterable is null.
canContainPole
protected boolean canContainPole()
- Indicates whether the shape is a closed polygon that can enclose a pole, or an open path that cannot. This makes
a difference when computing the bounding sector for a shape. For example, consider the positions (-100, 85), (0,
80), (100, 80). If these positions are treated as a closed polygon (a triangle over the North Pole) then the
bounding sector is 80 to 90 lat, -180 to 180 lon. But if they are treated as an open path (a line wrapping
partway around the pole) then the bounding sector is 80 to 85 lat, -100 to 100 lon. Overridden to treat the shape as an open path if the polyline is not closed.
- Overrides:
canContainPole in class AbstractSurfaceShape
- Returns:
- True if the shape is a closed polygon that can contain a pole, or false if it is treated as an open path
that cannot contain a pole.
createGeometry
protected List<List<LatLon>> createGeometry(Globe globe,
SurfaceTileDrawContext sdc)
- Specified by:
createGeometry in class AbstractSurfaceShape
doGetRestorableState
protected void doGetRestorableState(RestorableSupport rs,
RestorableSupport.StateObject context)
- Overrides:
doGetRestorableState in class AbstractSurfaceShape
doMoveTo
protected void doMoveTo(Position oldReferencePosition,
Position newReferencePosition)
- Specified by:
doMoveTo in class AbstractSurfaceShape
doRestoreState
protected void doRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context)
- Overrides:
doRestoreState in class AbstractSurfaceShape
drawInterior
protected void drawInterior(DrawContext dc,
SurfaceTileDrawContext sdc)
- Overrides:
drawInterior in class AbstractSurfaceShape
exportAsKML
protected void exportAsKML(Object output)
throws IOException,
XMLStreamException
- Export the polyline to KML as a
<Placemark> element. The output object will receive the data.
This object must be one of: java.io.Writer java.io.OutputStream javax.xml.stream.XMLStreamWriter
- Overrides:
exportAsKML in class AbstractSurfaceShape
- Parameters:
output - Object to receive the generated KML.
- Throws:
XMLStreamException - If an exception occurs while writing the KML
IOException - if an exception occurs while exporting the data.- See Also:
AbstractSurfaceShape.export(String, Object)
getLocations
public Iterable<? extends LatLon> getLocations()
getLocations
public Iterable<? extends LatLon> getLocations(Globe globe)
- Description copied from interface:
SurfaceShape
- Returns the shape's locations as they appear on the specified
globe, or null if the shape has no
locations.
- Specified by:
getLocations in interface SurfaceShape
- Parameters:
globe - the globe the shape is related to.
- Returns:
- the shapes locations on the globe, or null if the shape has no locations.
getReferencePosition
public Position getReferencePosition()
- Description copied from interface:
Movable
- A position associated with the object that indicates its aggregate geographic position. The chosen position
varies among implementers of this interface. For objects defined by a list of positions, the reference position
is typically the first position in the list. For symmetric objects the reference position is often the center of
the object. In many cases the object's reference position may be explicitly specified by the application.
- Specified by:
getReferencePosition in interface Movable- Specified by:
getReferencePosition in class AbstractSurfaceShape
- Returns:
- the object's reference position, or null if no reference position is available.
isClosed
public boolean isClosed()
legacyRestoreState
protected void legacyRestoreState(RestorableSupport rs,
RestorableSupport.StateObject context)
- Description copied from class:
AbstractSurfaceShape
- Restores state values from previous versions of the SurfaceShape state XML. These values are stored or named
differently than the current implementation. Those values which have not changed are ignored here, and will
restored in
AbstractSurfaceShape.doRestoreState(gov.nasa.worldwind.util.RestorableSupport,
gov.nasa.worldwind.util.RestorableSupport.StateObject).
- Overrides:
legacyRestoreState in class AbstractSurfaceShape
- Parameters:
rs - RestorableSupport object which contains the state value properties.context - active context in the RestorableSupport to read state from.
setClosed
public void setClosed(boolean closed)
setLocations
public void setLocations(Iterable<? extends LatLon> iterable)