public class InfiltrationLane extends AbstractMilStd2525TacticalGraphic
| Modifier and Type | Field and Description |
|---|---|
protected double |
curvature
Factor that controls the curve of the line.
|
static double |
DEFAULT_CURVATURE
Default factor that determines the curvature of the line.
|
static int |
DEFAULT_NUM_INTERVALS
Default number of intervals used to draw the curve.
|
protected int |
intervals
Number of intervals used to draw the curve.
|
protected static int |
NUM_CONTROL_POINTS
Number of control points that define the curve.
|
protected Path[] |
paths
Path used to render the line.
|
protected Position |
position1
First control point.
|
protected Position |
position2
Second control point.
|
protected Position |
position3
Third control point.
|
maskedSymbolCode, OUTLINE_STIPPLE_FACTOR_ANTICIPATED, OUTLINE_STIPPLE_FACTOR_PRESENT, OUTLINE_STIPPLE_PATTERN, symbolCodeactiveOverrides, 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 and Description |
|---|
InfiltrationLane(String sidc)
Create a new arrow graphic.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
applyDelegateOwner(Object owner)
Invoked each frame to apply to the current delegate owner to all renderable objects used to draw the graphic.
|
protected Vec4 |
bezierNearestPointToSegment(Vec4 p0,
Vec4 p1,
Vec4[] controlPoints,
int[] coefficients,
double tolerance)
Determine the point along a Bezier curve that is closest to a line segment.
|
protected Vec4[] |
computeBezierControlPoints(DrawContext dc,
Vec4 start,
Vec4 end,
int numControlPoints,
double curvature)
Compute the position of control points that will generate a Bezier curve that looks like the Infiltration Lane
graphic in MIL-STD-2525C (pg.
|
protected void |
createLabels()
Create labels for the start and end of the path.
|
protected Path |
createPath(List<Position> positions)
Create and configure the Path used to render this graphic.
|
protected void |
createShapes(DrawContext dc)
Create the list of positions that describe the arrow.
|
protected void |
determineLabelPositions(DrawContext dc)
Determine positions for the start and end labels.
|
protected void |
doRenderGraphic(DrawContext dc)
Render this graphic, without modifiers.
|
double |
getCurvature()
Indicates a factor that determines the curvature of the line.
|
int |
getIntervals()
Indicates the number of intervals used to draw the curve in this graphic.
|
protected int |
getNumControlPoints()
Indicates the number of control points that define the curve.
|
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 List<String> |
getSupportedGraphics()
Indicates the graphics supported by this class.
|
protected void |
onShapeChanged() |
void |
setCurvature(double factor)
Specifies a factor that determines the curvature of the line.
|
void |
setIntervals(int intervals)
Specifies the number of intervals used to draw the curve in this graphic.
|
void |
setPositions(Iterable<? extends Position> positions)
Specifies the positions of the control points that place and orient the graphic.
|
applyDefaultAttributes, createSymbol, getDefaultMaterial, getIdentifier, getModifier, getOutlineStippleFactor, getOutlineStipplePattern, getStatus, getText, mustShowHostileIndicator, setModifier, setStatusaddLabel, applyLabelAttributes, applyOverrideAttributes, computeGeometry, computeLabelInteriorOpacity, determineActiveAttributes, determineDelegateOwner, 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, setVisibleaddPropertyChangeListener, 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, setValuesclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAttributes, getDelegateOwner, getHighlightAttributes, getLabelOffset, getUnitsFormat, isShowGraphicModifiers, isShowHostileIndicator, isShowLocation, isShowTextModifiers, isVisible, setAttributes, setDelegateOwner, setHighlightAttributes, setLabelOffset, setShowGraphicModifiers, setShowHostileIndicator, setShowLocation, setShowTextModifiers, setText, setUnitsFormat, setVisiblerenderisHighlighted, setHighlightedaddPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValuesprotected double curvature
public static final double DEFAULT_CURVATURE
public static final int DEFAULT_NUM_INTERVALS
protected int intervals
protected static final int NUM_CONTROL_POINTS
protected Path[] paths
protected Position position1
protected Position position2
protected Position position3
public InfiltrationLane(String sidc)
sidc - Symbol code the identifies the graphic.protected void applyDelegateOwner(Object owner)
applyDelegateOwner in class AbstractTacticalGraphicowner - Current delegate owner.protected Vec4 bezierNearestPointToSegment(Vec4 p0, Vec4 p1, Vec4[] controlPoints, int[] coefficients, double tolerance)
p0 - First line segment point.p1 - Second line segment point.controlPoints - Control points for Bezier curve.coefficients - Binomial coefficients for computing curve.tolerance - Numerical tolerance. Smaller values will yield a more accurate answer, but will take more
iterations to compute.protected Vec4[] computeBezierControlPoints(DrawContext dc, Vec4 start, Vec4 end, int numControlPoints, double curvature)
dc - Current draw context.start - Beginning of the infiltration lane control line.end - End of the infiltration lane control line.numControlPoints - Number of control points to generate. More control points result in more "wiggles" in the
line.curvature - Factor that controls the curvature of the line. Valid values are between zero and one. A
higher value results in a more pronounced curve.start, and the last point
is equal to end.protected void createLabels()
createLabels in class AbstractTacticalGraphicprotected Path createPath(List<Position> positions)
positions - Positions that define the path.protected void createShapes(DrawContext dc)
dc - Current draw context.protected void determineLabelPositions(DrawContext dc)
determineLabelPositions in class AbstractTacticalGraphicdc - Current draw context.protected void doRenderGraphic(DrawContext dc)
doRenderGraphic in class AbstractTacticalGraphicdc - Current draw context.AbstractTacticalGraphic.doRenderTextModifiers(gov.nasa.worldwind.render.DrawContext),
AbstractTacticalGraphic.doRenderGraphicModifiers(gov.nasa.worldwind.render.DrawContext)public double getCurvature()
public int getIntervals()
protected int getNumControlPoints()
public Iterable<? extends Position> getPositions()
public Position getReferencePosition()
public static List<String> getSupportedGraphics()
protected void onShapeChanged()
public void setCurvature(double factor)
factor - The factor that determines the curvature of the line.public void setIntervals(int intervals)
intervals - Number of intervals for drawing the curve.