Bizarre Geometry Placement Results

Hi all, using Python in Grasshopper to place some geometry and getting very strange results (images below). Especially puzzling is that A) it was working fine an hour ago, and B) if I trigger a new solution by making a change in Rhino, everything sometimes previews correctly for a moment before jumping back. The geometry doesn’t quite seem misplaced randomly, but also not uniformly. My current best guess is some kind of float overflow, since I’m working in inches on a large canvas, but any other suggestions would be much appreciated!

right placement:

current results:

brief correct placement when new solution is triggered:

rhino & grasshopper files:20200706 plan scripting.3dm (217.4 KB) FSM plan generator 3 minimal.gh (14.0 KB)

I have just opened your file, typed _SelDup and pressed Delete
everything moved to the right place, I didn’t even try to check the GH definition :slight_smile:
give it a try :slight_smile: maybe that was the answer

Interesting. Just checked and SelDup doesn’t turn up any true duplicates, just point objects which share a location–they have different layers and names, but Rhino doesn’t consider those when checking for duplicates. I’m thinking it’s actually a subtler problem with the python scripts–seems to be working currently but if I run into problems again I’ll check if points at the same place are contributing to them. Thanks for checking!

that’s for sure interesting :slight_smile:

in my Rhino (v6, fully updated) if I _selDup it finds 6 points, recognised as exact duplicate entities, so points on the same layer and same location, identycal duplicates

if I _selDupAll it finds even 12 :smiley:

-see command line text-

The documentation says that SelDup doesn’t use layer info (The SelDup command selects objects that are geometrically identical with another object, visible, and in the same location regardless of other object properties.). But I probably do have points with the same layer and location, but different names.

But I actually did solve this! And it was indeed a problem with extra points rather than with the code, so you were closer than I was. Not exact duplicate points, but one stray that was throwing off the data tree alignment. So by deleting some points you may have rematched the data incidentally.

1 Like