Class CircularRangeFan
- java.lang.Object
-
- gov.nasa.worldwind.avlist.AVListImpl
-
- gov.nasa.worldwind.symbology.AbstractTacticalGraphic
-
- gov.nasa.worldwind.symbology.milstd2525.AbstractMilStd2525TacticalGraphic
-
- gov.nasa.worldwind.symbology.milstd2525.graphics.areas.CircularRangeFan
-
- All Implemented Interfaces:
AVList
,Draggable
,Movable
,Highlightable
,PreRenderable
,Renderable
,MilStd2525TacticalGraphic
,TacticalGraphic
public class CircularRangeFan extends AbstractMilStd2525TacticalGraphic implements PreRenderable
Implementation of the Circular Weapon/Sensor Range Fan graphic (2.X.4.3.4.1).
-
-
Field Summary
Fields Modifier and Type Field Description protected static Offset
LABEL_OFFSET
protected Position
position
Position of the center of the range fan.protected java.util.List<SurfaceCircle>
rings
Rings that make up the range fan.protected TacticalSymbol
symbol
Symbol drawn at the center of the range fan.protected TacticalSymbolAttributes
symbolAttributes
Attributes applied to the symbol.-
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, dragEnabled, draggableSupport, frameTimestamp, highlightAttributes, highlighted, labelOffset, labels, modifiers, mustCreateLabels, normalAttributes, showGraphicModifiers, showHostileIndicator, showLocation, showTextModifiers, text, unitsFormat, visible
-
-
Constructor Summary
Constructors Constructor Description CircularRangeFan(java.lang.String sidc)
Create the range fan.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
applyDelegateOwner(java.lang.Object owner)
Invoked each frame to apply to the current delegate owner to all renderable objects used to draw the graphic.protected SurfaceCircle
createCircle()
Create a circle for a range ring.protected void
createLabels()
Create labels for the start and end of the path.protected void
determineActiveAttributes()
Determine active attributes for this frame.protected void
determineLabelPositions(DrawContext dc)
Determine positions for the start and end labels.protected void
doRenderGraphic(DrawContext dc)
Render the polygon.protected void
doRenderGraphicModifiers(DrawContext dc)
Render the graphic modifiers.java.lang.Object
getModifier(java.lang.String modifier)
Indicates the current value of a text or graphic modifier.Position
getPosition()
Indicates the center position of the range ran.java.lang.Iterable<? extends Position>
getPositions()
Indicates the positions of the control points that place and orient the graphic.java.util.List<java.lang.Double>
getRadii()
Indicates the radii of the rings that make up the range fan.Position
getReferencePosition()
A position associated with the object that indicates its aggregate geographic position.static java.util.List<java.lang.String>
getSupportedGraphics()
Indicates the graphics supported by this class.java.lang.String
getSymbol()
Indicates a symbol drawn at the center of the range fan.void
preRender(DrawContext dc)
void
setModifier(java.lang.String modifier, java.lang.Object value)
Specifies the value of a text or graphic modifier.void
setPosition(Position position)
Specifies the center position of the range ran.void
setPositions(java.lang.Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.void
setRadii(java.lang.Iterable<java.lang.Double> radii)
Specifies the radii of the rings that make up the range fan.void
setSymbol(java.lang.String sidc)
Specifies a symbol to draw at the center of the range fan.-
Methods inherited from class gov.nasa.worldwind.symbology.milstd2525.AbstractMilStd2525TacticalGraphic
applyDefaultAttributes, createSymbol, getDefaultMaterial, getIdentifier, getOutlineStippleFactor, getOutlineStipplePattern, getStatus, getText, mustShowHostileIndicator, setStatus
-
Methods inherited from class gov.nasa.worldwind.symbology.AbstractTacticalGraphic
addLabel, applyLabelAttributes, applyOverrideAttributes, computeGeometry, computeLabelInteriorOpacity, determineDelegateOwner, determinePerFrameAttributes, doDrag, doRenderTextModifiers, drag, getActiveDelegateOwner, getActiveOverrideAttributes, getActiveShapeAttributes, getAttributes, getDefaultLabelOffset, getDelegateOwner, getHighlightAttributes, getLabelMaterial, getLabelOffset, getUnitsFormat, isDragEnabled, isHighlighted, isShowGraphicModifiers, isShowHostileIndicator, isShowLocation, isShowTextModifiers, isVisible, move, moveTo, onModifierChanged, render, setAttributes, setDelegateOwner, setDragEnabled, 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, 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
-
Methods inherited from interface gov.nasa.worldwind.render.Highlightable
isHighlighted, setHighlighted
-
Methods inherited from interface gov.nasa.worldwind.render.Renderable
render
-
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
-
-
-
-
Field Detail
-
LABEL_OFFSET
protected static final Offset LABEL_OFFSET
-
position
protected Position position
Position of the center of the range fan.
-
rings
protected java.util.List<SurfaceCircle> rings
Rings that make up the range fan.
-
symbol
protected TacticalSymbol symbol
Symbol drawn at the center of the range fan.
-
symbolAttributes
protected TacticalSymbolAttributes symbolAttributes
Attributes applied to the symbol.
-
-
Method Detail
-
getSupportedGraphics
public static java.util.List<java.lang.String> getSupportedGraphics()
Indicates the graphics supported by this class.- Returns:
- List of masked SIDC strings that identify graphics that this class supports.
-
getPosition
public Position getPosition()
Indicates the center position of the range ran.- Returns:
- The range fan center position.
-
setPosition
public void setPosition(Position position)
Specifies the center position of the range ran.- Parameters:
position
- The new center position.
-
setPositions
public void setPositions(java.lang.Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.- Specified by:
setPositions
in interfaceTacticalGraphic
- Parameters:
positions
- Control points. This graphic uses only one control point, which determines the center of the circle.
-
setModifier
public void setModifier(java.lang.String modifier, java.lang.Object value)
Specifies the value of a text or graphic modifier.- Specified by:
setModifier
in interfaceTacticalGraphic
- Overrides:
setModifier
in classAbstractMilStd2525TacticalGraphic
- Parameters:
modifier
- Key that identifies the modifier to set. The possible modifiers depends on the symbol set.value
- New value for the modifier.
-
getModifier
public java.lang.Object getModifier(java.lang.String modifier)
Indicates the current value of a text or graphic modifier.- Specified by:
getModifier
in interfaceTacticalGraphic
- Overrides:
getModifier
in classAbstractMilStd2525TacticalGraphic
- Parameters:
modifier
- Key that identifies the modifier to retrieve. The possible modifiers depends on the symbol set.- Returns:
- The value of the modifier, or
null
if the modifier is not set.
-
getRadii
public java.util.List<java.lang.Double> getRadii()
Indicates the radii of the rings that make up the range fan.- Returns:
- List of radii, in meters. If there are no rings this returns an empty list.
-
setRadii
public void setRadii(java.lang.Iterable<java.lang.Double> radii)
Specifies the radii of the rings that make up the range fan.- Parameters:
radii
- List of radii, in meters. A circle will be created for each radius.
-
getSymbol
public java.lang.String getSymbol()
Indicates a symbol drawn at the center of the range fan.- Returns:
- The symbol drawn at the center of the range fan. May be null.
-
setSymbol
public void setSymbol(java.lang.String sidc)
Specifies a symbol to draw at the center of the range fan. Equivalent to setting theSymbologyConstants.SYMBOL_INDICATOR
modifier. The symbol's position will be changed to match the range fan center position.- Parameters:
sidc
- Identifier for a MIL-STD-2525C symbol to draw at the center of the range fan. May be null to indicate that no symbol is drawn.
-
getPositions
public java.lang.Iterable<? extends Position> getPositions()
Indicates the positions of the control points that place and orient the graphic.- Specified by:
getPositions
in interfaceTacticalGraphic
- 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.
-
getReferencePosition
public Position getReferencePosition()
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 interfaceMovable
- Returns:
- the object's reference position, or null if no reference position is available.
-
preRender
public void preRender(DrawContext dc)
- Specified by:
preRender
in interfacePreRenderable
-
doRenderGraphic
protected void doRenderGraphic(DrawContext dc)
Render the polygon.- Specified by:
doRenderGraphic
in classAbstractTacticalGraphic
- Parameters:
dc
- Current draw context.- See Also:
AbstractTacticalGraphic.doRenderTextModifiers(gov.nasa.worldwind.render.DrawContext)
,AbstractTacticalGraphic.doRenderGraphicModifiers(gov.nasa.worldwind.render.DrawContext)
-
doRenderGraphicModifiers
protected void doRenderGraphicModifiers(DrawContext dc)
Render the graphic modifiers. This base class does not render anything, but subclasses may override this method to draw graphic modifiers. Overridden to render symbol at the center of the range fan.- Overrides:
doRenderGraphicModifiers
in classAbstractTacticalGraphic
- Parameters:
dc
- Current draw context.
-
createLabels
protected void createLabels()
Create labels for the start and end of the path.- Overrides:
createLabels
in classAbstractTacticalGraphic
-
determineLabelPositions
protected void determineLabelPositions(DrawContext dc)
Determine positions for the start and end labels.- Overrides:
determineLabelPositions
in classAbstractTacticalGraphic
- Parameters:
dc
- Current draw context.
-
determineActiveAttributes
protected void determineActiveAttributes()
Determine active attributes for this frame. Overridden to update symbol attributes.- Overrides:
determineActiveAttributes
in classAbstractTacticalGraphic
-
applyDelegateOwner
protected void applyDelegateOwner(java.lang.Object owner)
Invoked each frame to apply to the current delegate owner to all renderable objects used to draw the graphic. This base class will apply the delegate owner to Label objects. Subclasses must implement this method to apply the delegate owner to any Renderables that they will draw in order to render the graphic.- Specified by:
applyDelegateOwner
in classAbstractTacticalGraphic
- Parameters:
owner
- Current delegate owner.
-
createCircle
protected SurfaceCircle createCircle()
Create a circle for a range ring.- Returns:
- New circle.
-
-