new Cesium.PolygonGeometry(options)
对椭球体上多边形的描述。多边形由一个多边形层次结构(hierarchy)定义。
多边形几何可以用
Primitive
和GroundPrimitive
来绘制。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
对象,具有以下属性:
|
- PolygonGeometry#createGeometry
- PolygonGeometry#fromPositions
示例:
// 1. 从多个点创建一个多边形
var polygon = new Cesium.PolygonGeometry({
polygonHierarchy : new Cesium.PolygonHierarchy(
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.PolygonGeometry.createGeometry(polygon);
// 2. 创建一个有洞的嵌套多边形
var polygonWithHole = new Cesium.PolygonGeometry({
polygonHierarchy : new Cesium.PolygonHierarchy(
Cesium.Cartesian3.fromDegreesArray([
-109.0, 30.0,
-95.0, 30.0,
-95.0, 40.0,
-109.0, 40.0
]),
[new Cesium.PolygonHierarchy(
Cesium.Cartesian3.fromDegreesArray([
-107.0, 31.0,
-107.0, 39.0,
-97.0, 39.0,
-97.0, 31.0
]),
[new Cesium.PolygonHierarchy(
Cesium.Cartesian3.fromDegreesArray([
-105.0, 33.0,
-99.0, 33.0,
-99.0, 37.0,
-105.0, 37.0
]),
[new Cesium.PolygonHierarchy(
Cesium.Cartesian3.fromDegreesArray([
-103.0, 34.0,
-101.0, 34.0,
-101.0, 36.0,
-103.0, 36.0
])
)]
)]
)]
)
});
var geometry = Cesium.PolygonGeometry.createGeometry(polygonWithHole);
// 3. 创建挤压多边形
var extrudedPolygon = new Cesium.PolygonGeometry({
polygonHierarchy : new Cesium.PolygonHierarchy(
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 = Cesium.PolygonGeometry.createGeometry(extrudedPolygon);
演示Demo:
参考:
成员变量
packedLength : Number
用于将对象打包成数组的元素数。
内置方法
返回给定options的包围框
Name | Type | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
对象,具有以下属性:
|
||||||||||||||||||||
result |
Rectangle | optional 存储结果的对象。 |
返回值:
结果矩形。
计算多边形的几何表示,包括其顶点、索引和包围球。
Name | Type | Description |
---|---|---|
polygonGeometry |
PolygonGeometry | 多边形的描述。 |
返回值:
计算的顶点和索引。
从位置数组中对多边形的描述。多边形几何可以用
Primitive
和GroundPrimitive
来绘制。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
对象,具有以下属性:
|
返回值:
- PolygonGeometry#createGeometry
示例:
// 从多个点创建一个多边形
var polygon = Cesium.PolygonGeometry.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.PolygonGeometry.createGeometry(polygon);
参考:
staticCesium.PolygonGeometry.pack(value, array, startingIndex) → Array.<Number>
将提供的实例存储到提供的数组中。
Name | Type | Default | Description |
---|---|---|---|
value |
PolygonGeometry | 要包装的值。 | |
array |
Array.<Number> | 要被包装到的数组。 | |
startingIndex |
Number |
0
|
optional 开始包装元素的数组索引。 |
返回值:
被包装到的数组。
从已包装的数组中检索实例。
Name | Type | Default | Description |
---|---|---|---|
array |
Array.<Number> | 包装的数组。 | |
startingIndex |
Number |
0
|
optional 要解包的元素的起始索引。 |
result |
PolygonGeometry | optional 存储结果的对象。 |
返回值:
修改后的结果参数或新的PolygonGeometry实例(如果没有提供)。