getGeometryInstanceAttributes is not a function - Error

113 views
Skip to first unread message

maryam

unread,
Sep 25, 2018, 8:33:38 AM9/25/18
to cesium-dev
1. A concise explanation of the problem you're experiencing.

Hi everyone,

I have an issue with using "getGeometryInstanceAttributes".
When I try to use getGeometryInstanceAttributes, I get an error that "getGeometryInstanceAttributes is not a function "
This a part of the code:

var load = function(viewer, callback) {
...
var cubes;
req.onload = function(evt) {
    ...
    that.primitive =  new Cesium.PrimitiveCollection({show:true, destroyPrimitives:true});
    ...
    that.primitive.add(...);
     viewer.scene.primitives.add(that.primitive);
     callback(viewer,  that.primitive , this.number_cube);

}


 function callBackFunc (viewer, myPrimitive, cubes) {
 ...
var i = 0;
       var color = myPrimitive.getGeometryInstanceAttributes(i).color; //  ERROR: myPrimitive.getGeometryInstanceAttributes is not a function
        color[3] = (Math.cos(counter) * 0.5 + 0.5) * 255;
        myPrimitive.getGeometryInstanceAttributes(i).color = color;
    });

}
I really appreciate your help.


2. A minimal code example. If you've found a bug, this helps us reproduce and repair it.



3. Context. Why do you need to do this? We might know a better way to accomplish your goal.



4. The Cesium version you're using, your operating system and browser.



Omar Shehata

unread,
Sep 25, 2018, 9:10:39 AM9/25/18
to cesium-dev
Hey Maryam, 

Notice that a PrimitiveCollection (https://cesiumjs.org/Cesium/Build/Documentation/PrimitiveCollection.html) is not the same as a Primitive (https://cesiumjs.org/Cesium/Build/Documentation/Primitive.html). A Primitive has a method `getGeometryInstanceAttributes` while PrimitiveCollection does not.

When you add a primitive, it returns the primitive that was added (see https://cesiumjs.org/Cesium/Build/Documentation/PrimitiveCollection.html#add). So you should call getGeometryInstanceAttributes on that instead.

Does that make sense?
Reply all
Reply to author
Forward
0 new messages