new Geometry()
三维几何体类。
| Name | Type | Default | Description |
|---|---|---|---|
options.attributes |
GeometryAttributes |
可选
属性,这些属性构成了几何体的顶点。 |
|
options.primitiveType |
PrimitiveType | PrimitiveType.TRIANGLES |
可选
几何体中基元的类型。 |
options.indices |
Uint16Array | Uint32Array |
可选
可选的索引数据,用于确定几何体中的基元。 |
|
options.boundingSphere |
BoundingSphere |
可选
可选的包围球,将几何体完全包围起来。 |
- See:
-
- PolygonGeometry
- RectangleGeometry
- EllipseGeometry
- CircleGeometry
- WallGeometry
- SimplePolylineGeometry
- BoxGeometry
- EllipsoidGeometry
Example
// Create geometry with a position attribute and indexed lines.
var positions = new Float64Array([
0.0, 0.0, 0.0,
7500000.0, 0.0, 0.0,
0.0, 7500000.0, 0.0
]);
var geometry = new SuperMap3D.Geometry({
attributes : {
position : new SuperMap3D.GeometryAttribute({
componentDatatype : SuperMap3D.ComponentDatatype.DOUBLE,
componentsPerAttribute : 3,
values : positions
})
},
indices : new Uint16Array([0, 1, 1, 2, 2, 0]),
primitiveType : SuperMap3D.PrimitiveType.LINES,
boundingSphere : SuperMap3D.BoundingSphere.fromVertices(positions)
});
Members
-
attributesGeometryAttributes
-
属性,这些属性构成了几何体的顶点。 此对象中的每个属性都与包含属性数据的
GeometryAttribute相对应。 属性总是以非交错的方式存储在几何体中。保留的属性名具有众所周知的语义。 以下属性是由Geometry创建的(取决于提供的VertexFormat)。position- 三维顶点位置。64位浮点(用于精度)。每个属性3个组成部分。请参阅VertexFormat#position.normal-(标准化),常用于光照。 32 位浮点数。每个属性3个组成部分。请参阅VertexFormat#normal.st- 2D纹理坐标。32位浮点数。每个属性2个组成部分。请参阅VertexFormat#st.bitangent-(标准化),用于切线空间效果,如凹凸贴图。32位浮点数。每个属性3个组成部分。请参阅VertexFormat#bitangent.tangent- 切线(标准化),用于切线空间效果,如凹凸贴图。32位浮点数每个属性3个组成部分。请参阅VertexFormat#tangent.
Primitive或GeometryPipeline函数添加到 Geometry 以准备几何体以进行渲染。position3DHigh- 使用GeometryPipeline.encodeAttribute计算的编码64位位置的高32位。32位浮点数。每个属性4个组成部分。position3DLow- 使用GeometryPipeline.encodeAttribute计算的编码64位位置的低32位。32位浮点数。每个属性4个组成部分。position3DHigh- 使用GeometryPipeline.encodeAttribute计算的编码64位2D(哥伦布视图)位置的高32位。32位浮点数。每个属性4个组成部分。position2DLow- 使用GeometryPipeline.encodeAttribute计算的编码64位2D(哥伦布视图)位置的低32位。32位浮点数。每个属性4个组成部分。color- 通常来自GeometryInstance#color的RGBA 颜色(标准化)。 32位浮点数。每个属性4个组成部分。pickColor- 用于拾取的RGBA颜色。32位浮点数。每个属性4个组成部分。
- Default Value: undefined
- See:
-
- GeometryAttribute
- VertexFormat
Example
geometry.attributes.position = new SuperMap3D.GeometryAttribute({
componentDatatype : SuperMap3D.ComponentDatatype.FLOAT,
componentsPerAttribute : 3,
values : new Float32Array(0)
});
boundingSphereBoundingSphere
可选的包围球,完全包围几何体。通常用于剔除。
- Default Value: undefined
indicesArray
可选索引数据-与Geometry#primitiveType一起-确定几何中的基本元素。
- Default Value: undefined
primitiveTypePrimitiveType
几何体中的基元类型。 这通常是 PrimitiveType.TRIANGLES,但也会根据具体几何体的不同而变化。
- Default Value: undefined
Methods
-
static computeNumberOfVertices(geometry){Number}
-
计算几何体的顶点数。运行时间与顶点的属性数而不是顶点数呈线性关系。
Name Type Description geometryGeometry 几何体。
Returns:
Type Description Number 几何体的顶点数。 Example
var numVertices = SuperMap3D.Geometry.computeNumberOfVertices(geometry);