NASA World Wind

gov.nasa.worldwind.symbology.milstd2525.graphics.areas
Class FortifiedArea

java.lang.Object
  extended by gov.nasa.worldwind.avlist.AVListImpl
      extended by gov.nasa.worldwind.symbology.AbstractTacticalGraphic
          extended by gov.nasa.worldwind.symbology.milstd2525.AbstractMilStd2525TacticalGraphic
              extended by gov.nasa.worldwind.symbology.milstd2525.graphics.areas.BasicArea
                  extended by gov.nasa.worldwind.symbology.milstd2525.graphics.areas.FortifiedArea
All Implemented Interfaces:
AVList, Movable, Highlightable, PreRenderable, Renderable, MilStd2525TacticalGraphic, TacticalGraphic

public class FortifiedArea
extends BasicArea

Implementation of the Fortified Area graphic (2.X.2.1.3.4).


Field Summary
protected  List<Position> computedPositions
          Positions computed from the original positions.
static int DEFAULT_NUM_WAVES
          Default number of wave lengths for a simple shape.
protected  Iterable<? extends Position> positions
          Original positions specified by the application.
protected  double waveLength
          Indicates the wavelength of the square wave that forms the graphic's border.
 
Fields inherited from class gov.nasa.worldwind.symbology.milstd2525.graphics.areas.BasicArea
identityLabel1, identityLabel2, polygon
 
Fields inherited from class gov.nasa.worldwind.symbology.milstd2525.AbstractMilStd2525TacticalGraphic
maskedSymbolCode, OUTLINE_STIPPLE_FACTOR_ANTICIPATED, OUTLINE_STIPPLE_FACTOR_PRESENT, OUTLINE_STIPPLE_PATTERN, symbolCode
 
Fields inherited from class gov.nasa.worldwind.symbology.AbstractTacticalGraphic
activeOverrides, activeShapeAttributes, DEFAULT_HIGHLIGHT_MATERIAL, DEFAULT_LABEL_INTERIOR_OPACITY, delegateOwner, frameTimestamp, highlightAttributes, highlighted, labelOffset, labels, modifiers, mustCreateLabels, normalAttributes, showGraphicModifiers, showHostileIndicator, showLocation, showTextModifiers, text, unitsFormat, visible
 
Constructor Summary
FortifiedArea(String sidc)
           
 
Method Summary
protected  double computeDefaultWavelength(Globe globe)
          Compute a default tooth size for the polygon.
 void computeGeometry(DrawContext dc)
          
protected  void generateIntermediatePositions(DrawContext dc, Iterable<? extends Position> positions)
          Generate the positions required to draw the polygon with a square wave boundary.
 Iterable<? extends Position> getPositions()
          Indicates the positions of the control points that place and orient the graphic.
static List<String> getSupportedGraphics()
          Indicates the graphics supported by this class.
 double getWaveLength()
          Indicates the wavelength of the square wave that forms the graphic's boundary.
 void moveTo(Position position)
          Move the shape over the globe's surface while maintaining its original azimuth, its orientation relative to North.
 void setPositions(Iterable<? extends Position> positions)
          Specifies the positions of the control points that place and orient the graphic.
 void setWaveLength(double waveLength)
          Specifies the wavelength of the square wave that forms the graphic's boundary.
 
Methods inherited from class gov.nasa.worldwind.symbology.milstd2525.graphics.areas.BasicArea
applyDelegateOwner, createLabels, createLabelText, createPolygon, determineIdentityLabelPositions, determineLabelPositions, determineMainLabelPosition, doRenderGraphic, getGraphicLabel, getLabelAlignment, getPositionCount, getReferencePosition, makeShapes, preRender
 
Methods inherited from class gov.nasa.worldwind.symbology.milstd2525.AbstractMilStd2525TacticalGraphic
applyDefaultAttributes, createSymbol, getDefaultMaterial, getIdentifier, getModifier, getOutlineStippleFactor, getOutlineStipplePattern, getStatus, getText, mustShowHostileIndicator, setModifier, setStatus
 
Methods inherited from class gov.nasa.worldwind.symbology.AbstractTacticalGraphic
addLabel, applyLabelAttributes, applyOverrideAttributes, computeLabelInteriorOpacity, determineActiveAttributes, determineDelegateOwner, determinePerFrameAttributes, doRenderGraphicModifiers, doRenderTextModifiers, getActiveDelegateOwner, getActiveOverrideAttributes, getActiveShapeAttributes, getAttributes, getDefaultLabelOffset, getDelegateOwner, getHighlightAttributes, getLabelMaterial, getLabelOffset, getUnitsFormat, isHighlighted, isShowGraphicModifiers, isShowHostileIndicator, isShowLocation, isShowTextModifiers, isVisible, move, onModifierChanged, render, setAttributes, setDelegateOwner, setHighlightAttributes, setHighlighted, setLabelOffset, setShowGraphicModifiers, setShowHostileIndicator, setShowLocation, setShowTextModifiers, setText, setUnitsFormat, setVisible
 
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.symbology.TacticalGraphic
getAttributes, getDelegateOwner, getHighlightAttributes, getLabelOffset, getUnitsFormat, isShowGraphicModifiers, isShowHostileIndicator, isShowLocation, isShowTextModifiers, isVisible, setAttributes, setDelegateOwner, setHighlightAttributes, setLabelOffset, setShowGraphicModifiers, setShowHostileIndicator, setShowLocation, setShowTextModifiers, setText, setUnitsFormat, setVisible
 
Methods inherited from interface gov.nasa.worldwind.render.Renderable
render
 
Methods inherited from interface gov.nasa.worldwind.render.Highlightable
isHighlighted, setHighlighted
 
Methods inherited from interface gov.nasa.worldwind.Movable
move
 
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
 

Field Detail

computedPositions

protected List<Position> computedPositions
Positions computed from the original positions. This list includes the positions necessary to draw the square wave.


DEFAULT_NUM_WAVES

public static final int DEFAULT_NUM_WAVES
Default number of wave lengths for a simple shape. This number is used to compute a default wave length.

See Also:
Constant Field Values

positions

protected Iterable<? extends Position> positions
Original positions specified by the application.


waveLength

protected double waveLength
Indicates the wavelength of the square wave that forms the graphic's border.

Constructor Detail

FortifiedArea

public FortifiedArea(String sidc)
Method Detail

computeDefaultWavelength

protected double computeDefaultWavelength(Globe globe)
Compute a default tooth size for the polygon. This method computes the default wavelength as a function of the size of the polygon and the number of vertices. As the polygon gets bigger the wavelength will increase, but as the number of the vertices increases the wavelength will decrease to prevent the waves from obscuring the shape of the polygon.

Parameters:
globe - Globe on which the area will be rendered.
Returns:
The wave length.

computeGeometry

public void computeGeometry(DrawContext dc)

Overrides:
computeGeometry in class AbstractTacticalGraphic

generateIntermediatePositions

protected void generateIntermediatePositions(DrawContext dc,
                                             Iterable<? extends Position> positions)
Generate the positions required to draw the polygon with a square wave boundary.

Parameters:
dc - Current draw context.
positions - Positions that define the polygon boundary.

getPositions

public Iterable<? extends Position> getPositions()
Indicates the positions of the control points that place and orient the graphic.

Specified by:
getPositions in interface TacticalGraphic
Overrides:
getPositions in class BasicArea
Returns:
positions that orient the graphic. How many positions are returned depends on the type of graphic. Some graphics require only a single position, others require many.

getSupportedGraphics

public static List<String> getSupportedGraphics()
Indicates the graphics supported by this class.

Returns:
List of masked SIDC strings that identify graphics that this class supports.

getWaveLength

public double getWaveLength()
Indicates the wavelength of the square wave that forms the graphic's boundary. This is the length from the start of one square "tooth" to the start of the next.

    __    __
 __|  |__|  |__
   ^     ^
   Wavelength
 

Returns:
The wave length, in meters.

moveTo

public void moveTo(Position position)
Move the shape over the globe's surface while maintaining its original azimuth, its orientation relative to North.

Specified by:
moveTo in interface Movable
Overrides:
moveTo in class AbstractTacticalGraphic
Parameters:
position - the new position of the shape's reference position.

setPositions

public void setPositions(Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.

Specified by:
setPositions in interface TacticalGraphic
Overrides:
setPositions in class BasicArea
Parameters:
positions - Positions that orient the graphic. How many positions are returned depends on the type of graphic. Some graphics require only a single position, others require many. The positions must be specified in the same order as the control points defined by the symbology set's template for this type of graphic.

setWaveLength

public void setWaveLength(double waveLength)
Specifies the wavelength of the square wave that forms the graphic's boundary. See getWaveLength() for more information on how this distance is interpreted.

Parameters:
waveLength - The wavelength, in meters.

NASA World Wind