几何体实例化允许一个
new GeometryInstance(options)
Geometry
对象在多个不同的位置,并且颜色独特。例如,一个BoxGeometry
可以多次实例化,每个BoxGeometry
具有不同的modelMatrix
来更改其位置、旋转和比例。
Parameters:
options
(Object)
Name | Description |
---|---|
options.geometry
Geometry
|
要实例的几何体。 |
options.modelMatrix
Matrix4
default Matrix4.IDENTITY
|
将几何体从模型转换为世界坐标的模型矩阵。 |
options.id
Object
|
使用Scene#pick 或使用Primitive#getGeometryInstanceAttributes 获取/设置每个实例属性时要返回的用户定义对象。
|
options.attributes
Object
|
每个实例的属性,如下面示例中显示的show或color属性。 |
Example
// Create geometry for a box, and two instances that refer to it.
// One instance positions the box on the bottom and colored aqua.
// The other instance positions the box on the top and color white.
var geometry = bmgl.BoxGeometry.fromDimensions({
vertexFormat : bmgl.VertexFormat.POSITION_AND_NORMAL,
dimensions : new bmgl.Cartesian3(1000000.0, 1000000.0, 500000.0)
});
var instanceBottom = new bmgl.GeometryInstance({
geometry : geometry,
modelMatrix : bmgl.Matrix4.multiplyByTranslation(bmgl.Transforms.eastNorthUpToFixedFrame(
bmgl.Cartesian3.fromDegrees(-75.59777, 40.03883)), new bmgl.Cartesian3(0.0, 0.0, 1000000.0), new bmgl.Matrix4()),
attributes : {
color : bmgl.ColorGeometryInstanceAttribute.fromColor(bmgl.Color.AQUA)
},
id : 'bottom'
});
var instanceTop = new bmgl.GeometryInstance({
geometry : geometry,
modelMatrix : bmgl.Matrix4.multiplyByTranslation(bmgl.Transforms.eastNorthUpToFixedFrame(
bmgl.Cartesian3.fromDegrees(-75.59777, 40.03883)), new bmgl.Cartesian3(0.0, 0.0, 3000000.0), new bmgl.Matrix4()),
attributes : {
color : bmgl.ColorGeometryInstanceAttribute.fromColor(bmgl.Color.AQUA)
},
id : 'top'
});
See:
Members
attributes : Object
每个实例的属性,如
ColorGeometryInstanceAttribute
或ShowGeometryInstanceAttribute
。Geometry
每个顶点的属性不同;这些属性对于整个实例都是常量。
-
Default Value:
undefined
geometry : Geometry
正在实例化的几何体。
-
Default Value:
undefined
id : Object
选择实例或使用实例获取/设置每个实例属性时返回的用户定义对象。
-
Default Value:
undefined
See:
modelMatrix : Matrix4
将几何体从模型坐标转换为世界坐标的4x4转换矩阵。当这是单位矩阵时,几何图形以世界坐标绘制,即地球的wgs84坐标。本地参考帧可以通过提供不同的转换矩阵来使用,如
Transforms.eastNorthUpToFixedFrame
返回的转换矩阵。
-
Default Value:
Matrix4.IDENTITY