幾何體實例化允許一個
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