我想用铯绘制三角形,其中每个顶点是具有(lon,lat,alt)的地理点以及具有不同颜色的每个顶点。但我收到错误。我是Cesium的新手,我想我必须做的是定义一个几何实例并将其附加到场景中。我的代码是:使用铯绘制三角形时出现错误
var viewer = new Cesium.Viewer('cesiumContainer');
var mypositions = Cesium.Cartesian3.fromDegreesArrayHeights([104.317776, 31.59491, 10,
105.317776, 32.59491, 20,
106.317776, 33.59491, 30]);
var pos = new Float64Array(mypositions);
var geometry = new Cesium.Geometry({
attributes: {
position: new Cesium.GeometryAttribute({
componentDatatype: Cesium.ComponentDatatype.FLOAT,
componentsPerAttribute: 3,
values: pos
}),
normal: new Cesium.GeometryAttribute({
componentDatatype: Cesium.ComponentDatatype.FLOAT,
componentsPerAttribute: 3,
values: new Float32Array([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0])
})
},
indices: new Uint32Array([0, 1, 2]),
primitiveType: Cesium.PrimitiveType.TRIANGLES,
boundingSphere: Cesium.BoundingSphere.fromVertices(pos)
});
var myInstance = new Cesium.GeometryInstance({
geometry: geometry,
attributes: {
color: Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.RED)
},
show : new Cesium.ShowGeometryInstanceAttribute(true)
});
viewer.scene.primitives.add(new Cesium.Primitive({
geometryInstances: [myInstance],
appearance: new Cesium.PerInstanceColorAppearance({
closed: true,
translucent: false
})
}));
但后来我得到我的网页上的错误:
DeveloperError: All attribute lists must have the same number of attributes.
我想知道我做错了,我怎么能解决这个问题呢?