用于定义椭圆或圆形几何形状类。
可以通过
Primitive
和GroundPrimitive
两者进行渲染。
Name | Type | Default | Description |
---|---|---|---|
options.center |
Cartesian3 | 椭圆在固定坐标系中的中心点。 | |
options.semiMajorAxis |
Number | 椭圆半长轴的长度,以米为单位。 | |
options.semiMinorAxis |
Number | 椭圆的短半轴长度,以米为单位。 | |
options.ellipsoid |
Ellipsoid |
Ellipsoid.WGS84
|
optional 椭圆所在的椭球体。 |
options.height |
Number |
0.0
|
optional 椭圆与椭球体表面之间的距离,以米为单位。 |
options.extrudedHeight |
Number | optional 椭圆拉伸面与椭球体表面之间的距离,以米为单位。 | |
options.rotation |
Number |
0.0
|
optional 从北逆时针旋转的角度。 |
options.stRotation |
Number |
0.0
|
optional 从北方逆时针旋转纹理坐标。 |
options.granularity |
Number |
Math.RADIANS_PER_DEGREE
|
optional 椭圆上各点之间的角度距离,以弧度为单位。 |
options.vertexFormat |
VertexFormat |
VertexFormat.DEFAULT
|
optional 要计算的顶点属性。 |
Throws:
-
DeveloperError : semiMajorAxis 和 semiMinorAxis 必须大于零。
-
DeveloperError : semiMajorAxis 必须大于或等于 semiMinorAxis。
-
DeveloperError : granularity必须大于零。
Example:
// Create an ellipse.
var ellipse = new SuperMap3D.EllipseGeometry({
center : SuperMap3D.Cartesian3.fromDegrees(-75.59777, 40.03883),
semiMajorAxis : 500000.0,
semiMinorAxis : 300000.0,
rotation : SuperMap3D.Math.toRadians(60.0)
});
var geometry = SuperMap3D.EllipseGeometry.createGeometry(ellipse);
See:
Members
-
用于将对象打包到数组中的元素个数。
Methods
-
staticSuperMap3D.EllipseGeometry.createGeometry(ellipseGeometry) → Geometry|undefined
-
计算椭球体表面椭圆的几何表示,包括其顶点、索引及包围球。
Name Type Description ellipseGeometry
EllipseGeometry 对椭圆的描述。 Returns:
计算的顶点和索引。 -
将提供的实例存储到提供的数组中。
Name Type Default Description value
EllipseGeometry 要打包的值。 array
Array.<Number> 要打包的数组。 startingIndex
Number 0
optional 开始打包元素的数组索引。 Returns:
装入的数组。 -
staticSuperMap3D.EllipseGeometry.unpack(array, startingIndex, result) → EllipseGeometry
-
从打包数组中检索实例。
Name Type Default Description array
Array.<Number> 打包的数组。 startingIndex
Number 0
optional 要解包的元素的起始索引。 result
EllipseGeometry optional 存储结果的对象。 Returns:
修改后的结果参数或新的 EllipseGeometry 实例(如果未提供)。