Constructor
new SurfacePolygon(boundaries, attributes)
Constructs a surface polygon.
Parameters:
Name | Type | Description |
---|---|---|
boundaries |
Array | The polygons boundary locations. If this argument is an array of Locations they define this polygon's outer boundary. If it is an array of arrays of Locations then each array entry defines one of this polygon's boundaries. |
attributes |
ShapeAttributes | The attributes to apply to this shape. May be null, in which case attributes must be set directly before the shape is drawn. |
- Source:
Throws:
-
If the specified boundaries are null or undefined.
- Type
- ArgumentError
Extends
Members
attributes :ShapeAttributes
The shape's attributes. If null and this shape is not highlighted, this shape is not drawn.
Type:
- Inherited From:
- Default Value:
- see ShapeAttributes
- Source:
boundaries :Array.<Array.<Location>>|Array.<Location>
This polygon's boundaries. The polygons boundary locations. If this argument is an array of
Locations they define this polygon's outer boundary. If it is an array of arrays of
Locations then each array entry defines one of this polygon's boundaries.
Type:
- Source:
boundingSector :Sector
Defines the extent of the shape in latitude and longitude.
This sector only has valid data once the boundary is defined. Prior to this, it is null.
Type:
- Inherited From:
- Source:
displayName :String
The shape's display name and label text.
Type:
- String
- Inherited From:
- Default Value:
- Surface Shape
- Source:
enabled :Boolean
Indicates whether this shape is drawn.
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:
highlightAttributes :ShapeAttributes
The attributes used when this shape's highlighted flag is true. If null and the
highlighted flag is true, this shape's normal attributes are used. If they, too, are null, this
shape is not drawn.
Type:
- Inherited From:
- Default Value:
- null
- Source:
highlighted :Boolean
Indicates whether this shape displays with its highlight attributes rather than its normal attributes.
Type:
- Boolean
- Inherited From:
- Default Value:
- false
- Source:
maximumNumEdgeIntervals :Number
The maximum number of intervals an edge will be broken into. This is the number of intervals that an
edge that spans to opposite side of the globe would be broken into. This is strictly an upper bound
and the number of edge intervals may be lower if this resolution is not needed.
Type:
- Number
- Inherited From:
- Default Value:
- SurfaceShape.DEFAULT_NUM_EDGE_INTERVALS
- Source:
pathType :String
The path type to used to interpolate between locations on this shape. Recognized values are:
- WorldWind.GREAT_CIRCLE
- WorldWind.RHUMB_LINE
- WorldWind.LINEAR
Type:
- String
- Inherited From:
- Default Value:
- WorldWind.GREAT_CIRCLE
- Source:
pickDelegate :Object
Indicates the object to return as the owner of this shape when picked.
Type:
- Object
- Inherited From:
- Default Value:
- null
- Source:
polarThrottle :Number
A dimensionless number that controls throttling of edge traversal near the poles where edges need to be
sampled more closely together.
A value of 0 indicates that no polar throttling is to be performed.
Type:
- Number
- Inherited From:
- Default Value:
- SurfaceShape.DEFAULT_POLAR_THROTTLE
- Source:
timeRange :Array.<Date>
An array with two elements:
start time and end time of the visible range.
Type:
- Array.<Date>
- Inherited From:
- 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:
Methods
area(globe, terrainConformant)
Returns this shape's area in square meters.
Parameters:
Name | Type | Description |
---|---|---|
globe |
Globe | The globe on which to compute the area. |
terrainConformant |
Boolean | If true, the returned area is that of the terrain, including its hillsides and other undulations. If false, the returned area is the shape's projected area. |
- Inherited From:
- Source:
computeExtent(dc) → {BoundingBox}
Computes the extent for the shape based on its sectors.
Parameters:
Name | Type | Description |
---|---|---|
dc |
DrawContext | The drawing context containing a globe. |
- Inherited From:
- Source:
Returns:
The extent for the shape.
- Type
- BoundingBox
computeSectors(dc) → {Array.<Sector>}
Computes the bounding sectors for the shape. There will be more than one if the shape crosses the date line,
but does not enclose a pole.
Parameters:
Name | Type | Description |
---|---|---|
dc |
DrawContext | The drawing context containing a globe. |
- Inherited From:
- Source:
Returns:
Bounding sectors for the shape.
- Type
- Array.<Sector>
computeShiftedLocations(globe, oldLocation, newLocation, locations) → {Array.<Location>}
Computes a new set of locations translated from a specified location to a new location for a shape.
Parameters:
Name | Type | Description |
---|---|---|
globe |
Globe | The globe on which to compute a new set of locations. |
oldLocation |
Location | The original reference location. |
newLocation |
Location | The new reference location. |
locations |
Array.<Location> | The locations to translate. |
- Inherited From:
- Source:
Returns:
The translated locations.
- Type
- Array.<Location>
(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
get()
A hash key of the total visible external state of the surface shape.
- Inherited From:
- 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
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:
renderToTexture(dc, ctx2D, xScale, yScale, dx, dy)
Internal use only.
Render the shape onto the texture map of the tile.
Parameters:
Name | Type | Description |
---|---|---|
dc |
DrawContext | The draw context to render onto. |
ctx2D |
CanvasRenderingContext2D | The rendering context for SVG. |
xScale |
Number | The multiplicative scale factor in the horizontal direction. |
yScale |
Number | The multiplicative scale factor in the vertical direction. |
dx |
Number | The additive offset in the horizontal direction. |
dy |
Number | The additive offset in the vertical direction. |
- Inherited From:
- Source: