椭球上多边形的描述。多边形由多边形层次定义。多边形几何图形可以用
new PolygonGeometry(options)
Primitive
和GroundPrimitive
渲染。
Parameters:
options
(Object)
Name | Description |
---|---|
options.polygonHierarchy
PolygonHierarchy
|
包含孔的多边形层次结构。 |
options.height
Number
default 0.0
|
多边形与椭球面之间的距离,单位为米。 |
options.extrudedHeight
Number
|
多边形的挤压面和椭球面之间的距离,单位为米。 |
options.vertexFormat
VertexFormat
default VertexFormat.DEFAULT
|
要计算的顶点属性。 |
options.stRotation
Number
default 0.0
|
纹理坐标的旋转,以弧度表示。正旋转是逆时针的。 |
options.ellipsoid
Ellipsoid
default Ellipsoid.WGS84
|
用作参考的椭球体。 |
options.granularity
Number
default BMMath.RADIANS_PER_DEGREE
|
每一纬度和经度之间的距离,以弧度表示。确定缓冲区中的位置数。 |
options.perPositionHeight
Boolean
default false
|
对每个位置使用options.positions的高度,而不是使用options.height来确定高度。 |
options.closeTop
Boolean
default true
|
如果为“假”,则使挤出多边形的顶部保持打开状态。 |
options.closeBottom
Boolean
default true
|
如果为“假”,则使拉伸多边形的底部保持打开状态。 |
options.arcType
ArcType
default ArcType.GEODESIC
|
多边形边必须遵循的线条类型。有效选项为ArcType.GEODESIC 和ArcType.RHUMB 。
|
Example
// 1. create a polygon from points
var polygon = new bmgl.PolygonGeometry({
polygonHierarchy : new bmgl.PolygonHierarchy(
bmgl.Cartesian3.fromDegreesArray([
-72.0, 40.0,
-70.0, 35.0,
-75.0, 30.0,
-70.0, 30.0,
-68.0, 40.0
])
)
});
var geometry = bmgl.PolygonGeometry.createGeometry(polygon);
// 2. create a nested polygon with holes
var polygonWithHole = new bmgl.PolygonGeometry({
polygonHierarchy : new bmgl.PolygonHierarchy(
bmgl.Cartesian3.fromDegreesArray([
-109.0, 30.0,
-95.0, 30.0,
-95.0, 40.0,
-109.0, 40.0
]),
[new bmgl.PolygonHierarchy(
bmgl.Cartesian3.fromDegreesArray([
-107.0, 31.0,
-107.0, 39.0,
-97.0, 39.0,
-97.0, 31.0
]),
[new bmgl.PolygonHierarchy(
bmgl.Cartesian3.fromDegreesArray([
-105.0, 33.0,
-99.0, 33.0,
-99.0, 37.0,
-105.0, 37.0
]),
[new bmgl.PolygonHierarchy(
bmgl.Cartesian3.fromDegreesArray([
-103.0, 34.0,
-101.0, 34.0,
-101.0, 36.0,
-103.0, 36.0
])
)]
)]
)]
)
});
var geometry = bmgl.PolygonGeometry.createGeometry(polygonWithHole);
// 3. create extruded polygon
var extrudedPolygon = new bmgl.PolygonGeometry({
polygonHierarchy : new bmgl.PolygonHierarchy(
bmgl.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 = bmgl.PolygonGeometry.createGeometry(extrudedPolygon);
- PolygonGeometry#createGeometry
- PolygonGeometry#fromPositions
See:
Members
packedLength : Number
用于将对象打包到数组中的元素数。
Methods
(static) computeRectangle(options, result) → {Rectangle}
返回给定选项的边框
Parameters:
options
(Object)
Name | Description |
---|---|
options.polygonHierarchy
PolygonHierarchy
|
包含孔的多边形层次结构。 |
options.granularity
Number
default BMMath.RADIANS_PER_DEGREE
|
每一纬度和经度之间的距离,以弧度表示。确定采样的位置数。 |
options.arcType
ArcType
default ArcType.GEODESIC
|
多边形边必须遵循的线条类型。有效选项为ArcType.GEODESIC 和ArcType.RHUMB 。
|
options.ellipsoid
Ellipsoid
default Ellipsoid.WGS84
|
用作参考的椭球体。 |
计算多边形的几何表示,包括其顶点、索引和边界球。
Parameters:
对位置数组中多边形的描述。多边形几何图形可以用
Primitive
和GroundPrimitive
渲染。
Parameters:
options
(Object)
Name | Description |
---|---|
options.positions
Array.<Cartesian3>
|
定义多边形角点的位置数组。 |
options.height
Number
default 0.0
|
多边形的高度。 |
options.extrudedHeight
Number
|
多边形拉伸的高度。 |
options.vertexFormat
VertexFormat
default VertexFormat.DEFAULT
|
要计算的顶点属性。 |
options.stRotation
Number
default 0.0
|
纹理坐标的旋转,以弧度表示。正旋转是逆时针的。 |
options.ellipsoid
Ellipsoid
default Ellipsoid.WGS84
|
用作参考的椭球体。 |
options.granularity
Number
default BMMath.RADIANS_PER_DEGREE
|
每一纬度和经度之间的距离,以弧度表示。确定缓冲区中的位置数。 |
options.perPositionHeight
Boolean
default false
|
对每个位置使用options.positions的高度,而不是使用options.height来确定高度。 |
options.closeTop
Boolean
default true
|
如果为“假”,则使挤出多边形的顶部保持打开状态。 |
options.closeBottom
Boolean
default true
|
如果为“假”,则使拉伸多边形的底部保持打开状态。 |
options.arcType
ArcType
default ArcType.GEODESIC
|
多边形边必须遵循的线条类型。有效选项为ArcType.GEODESIC 和ArcType.RHUMB 。
|
Example
// create a polygon from points
var polygon = bmgl.PolygonGeometry.fromPositions({
positions : bmgl.Cartesian3.fromDegreesArray([
-72.0, 40.0,
-70.0, 35.0,
-75.0, 30.0,
-70.0, 30.0,
-68.0, 40.0
])
});
var geometry = bmgl.PolygonGeometry.createGeometry(polygon);
- PolygonGeometry#createGeometry
See:
将提供的实例存储到提供的数组中。
Parameters:
array
(Array.<Number>)
要打包的数组。
startingIndex
(Number)
(default 0
)
数组中开始打包元素的索引。
从压缩数组中检索实例。
Parameters:
array
(Array.<Number>)
压缩数组。
startingIndex
(Number)
(default 0
)
要解包的元素的起始索引。