new PolygonOutlineGeometry()
A description of the outline of a polygon on the ellipsoid. The polygon is defined by a polygon hierarchy.
Name | Type | Default | Description |
---|---|---|---|
options.polygonHierarchy |
Object | A polygon hierarchy that can include holes. | |
options.height |
Number |
0.0
|
optional The height of the polygon. |
options.extrudedHeight |
Number | optional The height of the polygon. | |
options.vertexFormat |
VertexFormat |
VertexFormat.DEFAULT
|
optional The vertex attributes to be computed. |
options.ellipsoid |
Ellipsoid |
Ellipsoid.WGS84
|
optional The ellipsoid to be used as a reference. |
options.granularity |
Number |
CesiumMath.RADIANS_PER_DEGREE
|
optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer. |
options.perPositionHeight |
Boolean |
false
|
optional Use the height of options.positions for each position instead of using options.height to determine the height. |
- PolygonOutlineGeometry#createGeometry
- PolygonOutlineGeometry#fromPositions
Example:
// 1. create a polygon outline from points
var polygon = new Cesium.PolygonOutlineGeometry({
polygonHierarchy : {
positions : Cesium.Cartesian3.fromDegreesArray([
-72.0, 40.0,
-70.0, 35.0,
-75.0, 30.0,
-70.0, 30.0,
-68.0, 40.0
])
}
});
var geometry = Cesium.PolygonOutlineGeometry.createGeometry(polygon);
// 2. create a nested polygon with holes outline
var polygonWithHole = new Cesium.PolygonOutlineGeometry({
polygonHierarchy : {
positions : Cesium.Cartesian3.fromDegreesArray([
-109.0, 30.0,
-95.0, 30.0,
-95.0, 40.0,
-109.0, 40.0
]),
holes : [{
positions : Cesium.Cartesian3.fromDegreesArray([
-107.0, 31.0,
-107.0, 39.0,
-97.0, 39.0,
-97.0, 31.0
]),
holes : [{
positions : Cesium.Cartesian3.fromDegreesArray([
-105.0, 33.0,
-99.0, 33.0,
-99.0, 37.0,
-105.0, 37.0
]),
holes : [{
positions : Cesium.Cartesian3.fromDegreesArray([
-103.0, 34.0,
-101.0, 34.0,
-101.0, 36.0,
-103.0, 36.0
])
}]
}]
}]
}
});
var geometry = PolygonOutlineGeometry.createGeometry(polygonWithHole);
// 3. create extruded polygon outline
var extrudedPolygon = new PolygonOutlineGeometry({
positions : Cesium.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 = PolygonOutlineGeometry.createGeometry(extrudedPolygon);
See:
Methods
-
staticPolygonOutlineGeometry.createGeometry(polygonGeometry) → Geometry
-
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.Throws:
-
DeveloperError : At least three positions are required.
-
DeveloperError : Duplicate positions result in not enough positions to form a polygon.
-
-
staticPolygonOutlineGeometry.fromPositions()
-
A description of a polygon outline from an array of positions.
Name Type Default Description options.positions
Cartesian3[] An array of positions that defined the corner points of the polygon. options.height
Number 0.0
optional The height of the polygon. options.extrudedHeight
Number optional The height of the polygon extrusion. options.ellipsoid
Ellipsoid Ellipsoid.WGS84
optional The ellipsoid to be used as a reference. options.granularity
Number CesiumMath.RADIANS_PER_DEGREE
optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer. options.perPositionHeight
Boolean false
optional Use the height of options.positions for each position instead of using options.height to determine the height. - PolygonGeometry#createGeometry
Example:
// create a polygon from points var polygon = Cesium.PolygonOutlineGeometry.fromPositions({ positions : Cesium.Cartesian3.fromDegreesArray([ -72.0, 40.0, -70.0, 35.0, -75.0, 30.0, -70.0, 30.0, -68.0, 40.0 ]) }); var geometry = Cesium.PolygonOutlineGeometry.createGeometry(polygon);
See: