Class: Path

Path(positions, attributes)

Represents a line, curve or curtain between specified positions. The path is drawn between input positions to achieve a specified path type, which can be one of the following:
  • WorldWind.GREAT_CIRCLE
  • WorldWind.RHUMB_LINE
  • WorldWind.LINEAR

Paths conform to the terrain if the path's followTerrain property is true.

Altitudes within the path's positions are interpreted according to the path's altitude mode, which can be one of the following:

  • WorldWind.ABSOLUTE
  • WorldWind.RELATIVE_TO_GROUND
  • WorldWind.CLAMP_TO_GROUND
If the latter, the path positions' altitudes are ignored.

Paths have separate attributes for normal display and highlighted display. They use the interior and outline attributes of ShapeAttributes but do not use the image attributes.

A path displays as a curtain if its extrude property is true. A curtain extends from the line formed by the path positions to the ground.

This shape uses a SurfacePolyline when drawing on 2D globes and this shape's useSurfaceShapeFor2D is true.

Constructor

new Path(positions, attributes)

Constructs a path.
Parameters:
Name Type Description
positions Array.<Position> An array containing the path positions.
attributes ShapeAttributes The attributes to associate with this path. May be null, in which case default attributes are associated.
Source:
Throws:
If the specified positions array is null or undefined.
Type
ArgumentError

Extends

Members

altitudeMode :String

The altitude mode to use when drawing this shape. Recognized values are:
  • WorldWind.ABSOLUTE
  • WorldWind.RELATIVE_TO_GROUND
  • WorldWind.CLAMP_TO_GROUND
Type:
  • String
Inherited From:
Default Value:
  • WorldWind.ABSOLUTE
Source:

attributes :ShapeAttributes

This shape's normal (non-highlight) attributes.
Type:
Inherited From:
Source:

displayName :String

The display name of the renderable.
Type:
  • String
Inherited From:
Default Value:
  • "Renderable"
Source:

enabled :Boolean

Indicates whether to display this renderable.
Type:
  • Boolean
Inherited From:
Default Value:
  • true
Source:

expirationInterval :Number

Indicates how long to use terrain-specific shape data before regenerating it, in milliseconds. A value of zero specifies that shape data should be regenerated every frame. While this causes the shape to adapt more frequently to the terrain, it decreases performance.
Type:
  • Number
Inherited From:
Default Value:
  • 2000 (milliseconds)
Source:

extrude :Boolean

Specifies whether to extrude this path to the ground by drawing a filled interior from the path to the terrain. The filled interior uses this path's interior attributes.
Type:
  • Boolean
Default Value:
  • false
Source:

followTerrain :Boolean

Indicates whether this path should conform to the terrain.
Type:
  • Boolean
Default Value:
  • false
Source:

highlightAttributes :ShapeAttributes

This shape's highlight attributes. If null or undefined and this shape's highlight flag is true, this shape's normal attributes are used. If they in turn are null or undefined, this shape is not drawn.
Type:
Inherited From:
Default Value:
  • null
Source:

highlighted :Boolean

Indicates whether this shape uses its normal attributes or its highlight attributes when displayed. If true, the highlight attributes are used, otherwise the normal attributes are used. The normal attributes are also used if no highlight attributes have been specified.
Type:
  • Boolean
Inherited From:
Default Value:
  • false
Source:

numSubSegments :Number

Specifies the number of segments used between specified positions to achieve this path's path type. Higher values cause the path to conform more closely to the path type but decrease performance.

Note: The sub-segments number is ignored when the path follows terrain or when the path type is WorldWind.LINEAR.

Type:
  • Number
Default Value:
  • 10
Source:

pathType :String

The type of path to follow when drawing the path. Recognized values are:
  • WorldWind.GREAT_CIRCLE
  • WorldWind.RHUMB_LINE
  • WorldWind.LINEAR
Type:
  • String
Default Value:
  • WorldWind.GREAT_CIRCLE
Source:

pickDelegate :Object

Indicates the object to return as the userObject of this shape when picked. If null, then this shape is returned as the userObject.
Type:
  • Object
Inherited From:
Default Value:
  • null
Source:
See:

positions :Array.<Position>

This path's positions.
Type:
Source:

terrainConformance :Number

Specifies how accurately this path must adhere to the terrain when the path is terrain following. The value specifies the maximum number of pixels between tessellation points. Lower values increase accuracy but decrease performance.
Type:
  • Number
Default Value:
  • 10
Source:

userProperties :Object

An application defined object associated with this renderable. A typical use case is to associate application defined data with a picked renderable.
Type:
  • Object
Inherited From:
Default Value:
  • An empty object
Source:

useSurfaceShapeFor2D :Boolean

Indicates whether to use a surface shape to represent this shape when drawn on a 2D globe.
Type:
  • Boolean
Inherited From:
Default Value:
  • false
Source:

Methods

(protected) applyMvpMatrix(dc)

Apply the current navigator's model-view-projection matrix.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Inherited From:
Source:

(protected) applyMvpMatrixForOutline(dc)

Apply the current navigator's model-view-projection matrix with an offset to make this shape's outline stand out.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Inherited From:
Source:

(protected) beginDrawing(dc)

Called during ordered rendering. Subclasses may override this method in order to perform operations prior to drawing the shape. Applications do not call this method.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Overrides:
Source:

(protected) createShapeDataObject() → {Object}

Creates a new shape data object for the current globe state. Subclasses may override this method to modify the shape data object that this method creates, but must also call this method on this base class. Applications do not call this method.
Inherited From:
Source:
Returns:
The shape data object.
Type
Object

(protected) doMakeOrderedRenderable(dc)

Called during rendering. Subclasses must override this method with one that creates and enques an ordered renderable for this shape if this shape is to be displayed. Applications do not call this method.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Overrides:
Source:

(protected) doRenderOrdered(dc)

Called during ordered rendering. Subclasses must override this method to render the shape using the current shape data.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Overrides:
Source:

(protected) endDrawing(dc)

Called during ordered rendering. Subclasses may override this method in order to perform operations after the shape is drawn. Applications do not call this method.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Overrides:
Source:

(protected) isShapeDataCurrent(dc, shapeData) → {Boolean}

Indicates whether a specified shape data object is current. Subclasses may override this method to add criteria indicating whether the shape data object is current, but must also call this method on this base class. Applications do not call this method.
Parameters:
Name Type Description
dc DrawContext The current draw context.
shapeData Object The object to validate.
Inherited From:
Source:
Returns:
true if the object is current, otherwise false.
Type
Boolean

(protected) isWithinProjectionLimits(dc) → {Boolean}

Indicates whether this shape is within the current globe's projection limits. Subclasses may implement this method to perform the test. The default implementation returns true. Applications do not call this method.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Inherited From:
Source:
Returns:
true if this shape is is within or intersects the current globe's projection limits, otherwise false.
Type
Boolean

render(dc)

Render this renderable. Some shapes actually draw themselves during this call, others only add themselves to the draw context's ordered rendering list for subsequent drawing when their renderOrdered method is called. This method is intended to be called by layers such as RenderableLayer and not by applications.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Inherited From:
Source:

renderOrdered(dc)

Draws this shape during ordered rendering. Implements the OrderedRenderable interface. This method is called by the WorldWindow and is not intended to be called by applications.
Parameters:
Name Type Description
dc DrawContext The current draw context.
Inherited From:
Source:

(protected) reset()

Clears this shape's data cache. Should be called by subclasses when state changes invalidate cached data.
Inherited From:
Source: