Bounding Box Problem since Update

Hi there!

Immediately after the lastest Rhino update (8 8.24 coming from 8 8.23), the Grasshopper definition I’m working on failed.

The culprit turned out to be a bounding box which hast become inaccurate. Since I use Rhino two Macs, I did some tests on both machines, one updated, the other still on 8 8.23

The failure manifests as a wrong Z-Height after deconstructing the BREP. Although the error is very small, it made my definition fail, because I wanted to extract all points within a specific plane (hence the Z-value), and use it for a polyline. The failed BoundingBox produced a wrong Z-value for the plane and no points could be extracted.

I prepared two examples to demonstrate the problem. The first example uses the actual part I’m working on (a fantasy Blaster to be 3d Printed some time) and a purpose build test body. The frustrating part is, that the bounding box only fails on the actual part I’m working on, but works fine on my test object.

I already solved the problem with a simple workaround, but it is somehow very unsatisfying that this inaccuracy suddenly appears after an update.

Example 1: Failed BoundingBox on Mac mini with latest Rhino Version (8 8.24) on my working part:

Example 2: Correct BoundingBox on Mac mini with latest Rhino Version (8 8.24) on my test object:

Example 3: Correct BoundingBox on MacBook Air with Rhino Version 8 8.23 on my working part:

Example 4: Correct BoundingBox on MacBook Air with Rhino Version 8 8.23 on my test object:

Blastertest.3dm (2.8 MB)

BoundingBoxTest.3dm (2.9 MB)

BoundingBoxTest.gh (12.7 KB)

SystemInfo_MacBookAir.txt (4.6 KB)

SystemInfo_MacMini.txt (4.8 KB)

Again, I’m just posting for information only. Nonetheless I’m interested in what’s going on, and if it can be solved.

Thanks!

Hi @Sietse-Jan_Hollander,

Is the issue you’re seeing the value of 66.5 in SR23 vs the value of 66.500076 in SR24, which is certainly within tolerance?

If you run Rhino’s BoundingBox command in SR23 and SR24, does the output and output text differ?

– Dale

Hi Dale,

Yes exactly! I’m just wondering what could have caused the change in behaviour.

Best regards,

Jan

Hello Dale,

I get exactly the same (correct) results on both versions.

BR Jan

Hi @Sietse-Jan_Hollander,

If you crank up the display precision, the output of the BoundingBox command will look like this:

World coordinates:
min = -263.37841797,-28.00000000,-221.03000000
max = 377.16323853,28.00000000,66.50007629
dimensions = 640.54165649, 56.00000000, 287.53007629 millimeters

Note the 66.50007629 value, which is consistent with what you’re seeing in Grasshopper.

Note, the bounding box of a Brep is computed from more than just it’s vertices. So your comparison is invalid.

That said, the values are certainly within any reasonable tolerance to be considered equal.

equal = |b - a| < tolerance

– Dale

Hi Dale,

Thanks for the explanation!

BR Jan