Class AttackByFirePosition
- 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.AttackByFirePosition
-
- All Implemented Interfaces:
AVList
,Draggable
,Movable
,Highlightable
,Renderable
,MilStd2525TacticalGraphic
,TacticalGraphic
- Direct Known Subclasses:
SupportByFirePosition
public class AttackByFirePosition extends AbstractMilStd2525TacticalGraphic
Implementation of the Attack By Fire Position graphic (2.X.2.5.3.3).
-
-
Field Summary
Fields Modifier and Type Field Description protected Angle
arrowAngle
Length of the arrowhead from base to tip, as a fraction of the total line length.protected double
arrowLength
Angle of the arrowhead.static Angle
DEFAULT_ARROWHEAD_ANGLE
Default angle of the arrowhead.static double
DEFAULT_ARROWHEAD_LENGTH
Default length of the arrowhead, as a fraction of the total line length.static double
DEFAULT_LEG_LENGTH
Default length of the legs of the graphic's base, as a fraction of the distance between the control points the define the base.protected double
legLength
Length of the legs on the graphic's base, as a fraction of the distance between the control points that define the base.protected Path[]
paths
Path used to render the graphic.protected Position
position1
First control point.protected Position
position2
Second control point.protected Position
position3
Third control point.-
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 AttackByFirePosition(java.lang.String sidc)
Create a new arrow graphic.
-
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 java.util.List<Position>
computeArrowheadPositions(DrawContext dc, Position base, Position tip)
Determine the positions that make up the arrowhead.protected java.util.List<Position>
computeBasePositions(DrawContext dc, Position position1, Position position2, Position orientationPos)
Determine the positions that make up the base of the graphic (a trapezoid missing one side).protected Path
createPath(java.util.List<Position> positions)
Create and configure the Path used to render this graphic.protected void
createShapes(DrawContext dc)
Create the paths required to draw the graphic.protected void
doRenderGraphic(DrawContext dc)
Render this graphic, without modifiers.Angle
getArrowAngle()
Indicates the angle of the arrowhead.double
getArrowLength()
Indicates the length of the arrowhead.double
getLegLength()
Indicates the length of legs of the graphic's base.java.lang.Iterable<? extends Position>
getPositions()
Indicates the positions of the control points that place and orient the graphic.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.void
setArrowAngle(Angle arrowAngle)
Specifies the angle of the arrowhead in the graphic.void
setArrowLength(double arrowLength)
Specifies the length of the arrowhead.void
setLegLength(double legLength)
Specifies the length of the legs of the graphic's base.void
setPositions(java.lang.Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.-
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, computeGeometry, computeLabelInteriorOpacity, createLabels, determineActiveAttributes, determineDelegateOwner, determineLabelPositions, determinePerFrameAttributes, doDrag, doRenderGraphicModifiers, 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
-
DEFAULT_ARROWHEAD_LENGTH
public static final double DEFAULT_ARROWHEAD_LENGTH
Default length of the arrowhead, as a fraction of the total line length.- See Also:
- Constant Field Values
-
DEFAULT_ARROWHEAD_ANGLE
public static final Angle DEFAULT_ARROWHEAD_ANGLE
Default angle of the arrowhead.
-
DEFAULT_LEG_LENGTH
public static final double DEFAULT_LEG_LENGTH
Default length of the legs of the graphic's base, as a fraction of the distance between the control points the define the base.- See Also:
- Constant Field Values
-
arrowAngle
protected Angle arrowAngle
Length of the arrowhead from base to tip, as a fraction of the total line length.
-
arrowLength
protected double arrowLength
Angle of the arrowhead.
-
legLength
protected double legLength
Length of the legs on the graphic's base, as a fraction of the distance between the control points that define the base.
-
position1
protected Position position1
First control point.
-
position2
protected Position position2
Second control point.
-
position3
protected Position position3
Third control point.
-
paths
protected Path[] paths
Path used to render the graphic.
-
-
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.
-
getArrowAngle
public Angle getArrowAngle()
Indicates the angle of the arrowhead.- Returns:
- Angle of the arrowhead in the graphic.
-
setArrowAngle
public void setArrowAngle(Angle arrowAngle)
Specifies the angle of the arrowhead in the graphic.- Parameters:
arrowAngle
- The angle of the arrowhead. Must be greater than zero degrees and less than 90 degrees.
-
getArrowLength
public double getArrowLength()
Indicates the length of the arrowhead.- Returns:
- The length of the arrowhead as a fraction of the total line length.
-
setArrowLength
public void setArrowLength(double arrowLength)
Specifies the length of the arrowhead.- Parameters:
arrowLength
- Length of the arrowhead as a fraction of the total line length. If the arrowhead length is 0.25, then the arrowhead length will be one quarter of the total line length.
-
getLegLength
public double getLegLength()
Indicates the length of legs of the graphic's base.- Returns:
- The length of the legs of the base, as a fraction of the distance between the control points that define the base.
-
setLegLength
public void setLegLength(double legLength)
Specifies the length of the legs of the graphic's base.- Parameters:
legLength
- Length of the legs of the graphic's base, as a fraction of the distance between the control points that define the base.
-
setPositions
public void setPositions(java.lang.Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.- Parameters:
positions
- Control points that orient the graphic. Must provide at least three points.
-
getPositions
public java.lang.Iterable<? extends Position> getPositions()
Indicates the positions of the control points that place and orient the graphic.- 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.- Returns:
- the object's reference position, or null if no reference position is available.
-
doRenderGraphic
protected void doRenderGraphic(DrawContext dc)
Render this graphic, without modifiers.- 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)
-
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.
-
createShapes
protected void createShapes(DrawContext dc)
Create the paths required to draw the graphic.- Parameters:
dc
- Current draw context.
-
computeBasePositions
protected java.util.List<Position> computeBasePositions(DrawContext dc, Position position1, Position position2, Position orientationPos)
Determine the positions that make up the base of the graphic (a trapezoid missing one side).- Parameters:
dc
- Current draw context.position1
- The first control point that defines the graphic base.position2
- The second control point that defines the graphic base.orientationPos
- A point on the arrow head side of the graphic. The legs of the base will point away from this position.- Returns:
- Positions that define the graphic's base.
-
computeArrowheadPositions
protected java.util.List<Position> computeArrowheadPositions(DrawContext dc, Position base, Position tip)
Determine the positions that make up the arrowhead.- Parameters:
dc
- Current draw context.base
- Position of the arrow's starting point.tip
- Position of the arrow head tip.- Returns:
- Positions that define the arrowhead.
-
-