PolygonOutlineGeometry

new LSGlobe.PolygonOutlineGeometry(options)

A description of the outline of a polygon on the ellipsoid. The polygon is defined by a polygon hierarchy.
Name Type Description
options Object Object with the following properties:
Name Type Default Description
polygonHierarchy PolygonHierarchy A polygon hierarchy that can include holes.
height Number 0.0 optional The distance in meters between the polygon and the ellipsoid surface.
extrudedHeight Number optional The distance in meters between the polygon's extruded face and the ellipsoid surface.
vertexFormat VertexFormat VertexFormat.DEFAULT optional The vertex attributes to be computed.
ellipsoid Ellipsoid Ellipsoid.WGS84 optional The ellipsoid to be used as a reference.
granularity Number CesiumMath.RADIANS_PER_DEGREE optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
perPositionHeight Boolean false optional Use the height of options.positions for each position instead of using options.height to determine the height.
arcType ArcType ArcType.GEODESIC optional The type of path the outline must follow. Valid options are ArcType.GEODESIC and ArcType.RHUMB.
Example:
// 1. create a polygon outline from points
var polygon = new LSGlobe.PolygonOutlineGeometry({
  polygonHierarchy : new LSGlobe.PolygonHierarchy(
    LSGlobe.Cartesian3.fromDegreesArray([
      -72.0, 40.0,
      -70.0, 35.0,
      -75.0, 30.0,
      -70.0, 30.0,
      -68.0, 40.0
    ])
  )
});
var geometry = LSGlobe.PolygonOutlineGeometry.createGeometry(polygon);

// 2. create a nested polygon with holes outline
var polygonWithHole = new LSGlobe.PolygonOutlineGeometry({
  polygonHierarchy : new LSGlobe.PolygonHierarchy(
    LSGlobe.Cartesian3.fromDegreesArray([
      -109.0, 30.0,
      -95.0, 30.0,
      -95.0, 40.0,
      -109.0, 40.0
    ]),
    [new LSGlobe.PolygonHierarchy(
      LSGlobe.Cartesian3.fromDegreesArray([
        -107.0, 31.0,
        -107.0, 39.0,
        -97.0, 39.0,
        -97.0, 31.0
      ]),
      [new LSGlobe.PolygonHierarchy(
        LSGlobe.Cartesian3.fromDegreesArray([
          -105.0, 33.0,
          -99.0, 33.0,
          -99.0, 37.0,
          -105.0, 37.0
        ]),
        [new LSGlobe.PolygonHierarchy(
          LSGlobe.Cartesian3.fromDegreesArray([
            -103.0, 34.0,
            -101.0, 34.0,
            -101.0, 36.0,
            -103.0, 36.0
          ])
        )]
      )]
    )]
  )
});
var geometry = LSGlobe.PolygonOutlineGeometry.createGeometry(polygonWithHole);

// 3. create extruded polygon outline
var extrudedPolygon = new LSGlobe.PolygonOutlineGeometry({
  polygonHierarchy : new LSGlobe.PolygonHierarchy(
    LSGlobe.Cartesian3.fromDegreesArray([
      -72.0, 40.0,
      -70.0, 35.0,
      -75.0, 30.0,
      -70.0, 30.0,
      -68.0, 40.0
    ])
  ),
  extrudedHeight: 300000
});
var geometry = LSGlobe.PolygonOutlineGeometry.createGeometry(extrudedPolygon);
See:
  • PolygonOutlineGeometry#createGeometry
  • PolygonOutlineGeometry#fromPositions

Members

packedLength : Number

The number of elements used to pack the object into an array.

Methods

static LSGlobe.PolygonOutlineGeometry.createGeometry(polygonGeometry)Geometry|undefined

Computes the geometric representation of a polygon outline, including its vertices, indices, and a bounding sphere.
Name Type Description
polygonGeometry PolygonOutlineGeometry A description of the polygon outline.
Returns:
The computed vertices and indices.

static LSGlobe.PolygonOutlineGeometry.fromPositions(options)PolygonOutlineGeometry

A description of a polygon outline from an array of positions.
Name Type Description
options Object Object with the following properties:
Name Type Default Description
positions Array.<Cartesian3> An array of positions that defined the corner points of the polygon.
height Number 0.0 optional The height of the polygon.
extrudedHeight Number optional The height of the polygon extrusion.
ellipsoid Ellipsoid Ellipsoid.WGS84 optional The ellipsoid to be used as a reference.
granularity Number CesiumMath.RADIANS_PER_DEGREE optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
perPositionHeight Boolean false optional Use the height of options.positions for each position instead of using options.height to determine the height.
arcType ArcType ArcType.GEODESIC optional The type of path the outline must follow. Valid options are LinkType.GEODESIC and ArcType.RHUMB.
Returns:
Example:
// create a polygon from points
var polygon = LSGlobe.PolygonOutlineGeometry.fromPositions({
  positions : LSGlobe.Cartesian3.fromDegreesArray([
    -72.0, 40.0,
    -70.0, 35.0,
    -75.0, 30.0,
    -70.0, 30.0,
    -68.0, 40.0
  ])
});
var geometry = LSGlobe.PolygonOutlineGeometry.createGeometry(polygon);
See:
  • PolygonOutlineGeometry#createGeometry

static LSGlobe.PolygonOutlineGeometry.pack(value, array, startingIndex)Array.<Number>

Stores the provided instance into the provided array.
Name Type Default Description
value PolygonOutlineGeometry The value to pack.
array Array.<Number> The array to pack into.
startingIndex Number 0 optional The index into the array at which to start packing the elements.
Returns:
The array that was packed into

static LSGlobe.PolygonOutlineGeometry.unpack(array, startingIndex, result)PolygonOutlineGeometry

Retrieves an instance from a packed array.
Name Type Default Description
array Array.<Number> The packed array.
startingIndex Number 0 optional The starting index of the element to be unpacked.
result PolygonOutlineGeometry optional The object into which to store the result.
Returns:
The modified result parameter or a new PolygonOutlineGeometry instance if one was not provided.