BufferPolygon

View bound to the underlying buffer data of a BufferPolygonCollection.

BufferPolygon instances are flyweights: a single BufferPolygon instance can be temporarily bound to any conceptual "polygon" in a BufferPolygonCollection, allowing very large collections to be iterated and updated with a minimal memory footprint.

Represented as one (1) external linear ring of three (3) or more positions. May optionally define one or more internal linear rings ("holes") within the polygon. Each hole is represented as a single index into the positions array, where the vertex at that index is the start of an internal linear ring that continues along the following vertices until reaching either the vertex index of the next hole, or the end of the vertex list. Stores a precomputed triangulation, represented as three vertex indices per triangle.

new Cesium.BufferPolygon()

Experimental

This feature is not final and is subject to change without Cesium's standard deprecation policy.

See:

Extends

Members

Feature ID associated with the primitive; not required to be unique.
Inherited From:

readonly holeCount : number

Count of holes (indices) in this polygon.

readonly outerVertexCount : number

Count of positions (vertices) in this polygon's outer linear ring, number of VEC3 elements.

readonly outerVertexOffset : number

Offset in collection position array to first vertex in polygon's outer linear ring, number of VEC3 elements.
Whether primitive is shown.
Inherited From:

readonly triangleCount : number

Count of triangles in this polygon, number of VEC3 elements.

readonly vertexCount : number

Count of positions (vertices) in this polygon, including both outer ring and internal rings (holes), number of VEC3 elements.

Methods

static Cesium.BufferPolygon.clone(polygon, result)BufferPolygon

Copies data from source polygon to result. If the result polygon is not new (the last polygon in the collection) then source and result polygons must have the same vertex counts, hole counts, and triangle counts.
Name Type Description
polygon BufferPolygon
result BufferPolygon
Returns:
Returns the color of primitive.
Name Type Description
result Color
Returns:
Inherited From:

getHolePositions(holeIndex, result)

Returns an array view of the inner linear ring vertex positions for the specified hole. If 'result' argument is given, vertex positions are written to that array and returned. Otherwise, returns an ArrayView on collection memory — changes to this array will not trigger render updates, which requires `.setPositions()`.
Name Type Description
holeIndex number
result TypedArray optional return {TypedArray}
Gets this polygon's hole indices, with each hole represented as a single offset into this polygon's positions array. Each hole implicitly continues along an internal linear ring from that vertex offset until reaching either the end of the positions array, or the next hole offset. If 'result' argument is given, hole indices are written to that array and returned. Otherwise, returns an ArrayView on collection memory — changes to this array will not trigger render updates, which requires `.setHoles()`.
Name Type Description
result TypedArray optional
Returns:

getHoleVertexCount(holeIndex)number

Returns the number of (VEC3) vertices in the specified hole.
Name Type Description
holeIndex number
Returns:
Returns an array view of this polygon's outer linear ring vertex positions. If 'result' argument is given, vertex positions are written to that array and returned. Otherwise, returns an ArrayView on collection memory — changes to this array will not trigger render updates, which requires `.setPositions()`.
Name Type Description
result TypedArray optional
Returns:
Returns an array view of this polygon's vertex positions. If 'result' argument is given, vertex positions are written to that array and returned. Otherwise, returns an ArrayView on collection memory — changes to this array will not trigger render updates, which requires `.setPositions()`.
Name Type Description
result TypedArray optional return {TypedArray}
Returns an array view of this polygon's triangle indices, represented as three vertex indices per triangle. If 'result' argument is given, triangle indices are written to that array and returned. Otherwise, returns an ArrayView on collection memory — changes to this array will not trigger render updates, which requires `.setTriangles()`.
Name Type Description
result TypedArray optional
Returns:
Updates the color of primitive.
Name Type Description
color Color
Inherited From:
Sets this polygon's hole indices, with holes represented as a single offset into this polygon's positions array. Each hole implicitly continues along an internal linear ring from that vertex offset until reaching either the end of the positions array, or the next hole offset.
Name Type Description
holes TypedArray
Name Type Description
positions TypedArray
Sets this polygon's triangle indices, represented as three vertex indices per triangle.
Name Type Description
indices TypedArray
Returns a JSON-serializable object representing the polygon. This encoding is not memory-efficient, and should generally be used for debugging and testing.
Returns:
JSON-serializable object.
Inherited From:
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.