Inconsistent Object Data Display in Viewer?

Hello again folks!

Im here to report some pretty weird behavior im seeing in the Viewer for one of my streams. I have a stream that is originally from archicad, modified via GH and then uploaded as a new commit. The parameters i added via GH do not show up in the Selected Object Data palette that pops up whenever you select something in the viewer. However when i apply the window filter and select teh same window, all the parameters show up. So my first hunch is that it is just a display bug.

What is even weirder is that, the object id is different, which should NEVER be the case since, again, it should be the same object in both cases. So now it just seems almost like im gettin two different versions of this object somehow: One with the added parameters and one without?

Can someone shed some light on this ?

Okay, this one is to be expected. It’s not a bug, it’s actually how Speckle works. The id you see there is a unique hash generated based on all the object’s properties: this means that when you change that object in any way, the hash (its id) changes as well. This is really powerful, as it allows us to do a lot of magic in the background (diffing, sending only the changed objects over the wire, etc).

The id of those objects change because of two reasons:

  • Most likely: you’re adding extra properties to it, which essentially means a new hash for sure!
  • Potential: you’re receiving it in grasshopper, where data gets transformed into the local environment (this time gh), and that means some things might not be the same (eg, floating point precision if things get converted to meshes).

Nevertheless, there’s a different intransient id in Speckle that should stay the same, specifically the applicationId property. This is where we store the host application’s id, in whatever form or shape it comes. From your screenshots, it looks like it’s the same!

Next issue:

This is weird, and most likely a bug of sorts. Can we have a link to see if we can reproduce?

1 Like

I understand that but this is the same object. Both screenshots are from the same commit, and should be identical objects. Just by applying the isolate filter in the viewer should not be changing anything in the object. This is the only difference between the two screenshots.

Im sharing this stream with you so you can take a look.
image

Ok so nothing weird.
Windows got duplicated since i didnt remove them from under walls > elements before adding them under their own separate header in the data structure there. Clicking with vs without filter just selected different objects completely.
Ups!

3 Likes

The fun part is that we’ve figured it out via live chatting in a comment on the model (uhm, in romanian too) :smiley:

(let me know if I should remove that screenshot @Andrei!)

5 Likes