BoundingBox incorrect for Sphere object in wireframe

The attached 3dm file has a full sphere in wireframe - that looks like an arc because isocurves are turned off and it has not yet been display meshed.

Do not shade any views, run the following scriptlet:

import rhinoscriptsyntax as rs
msg="Select object for bounding box"
obj=rs.GetObject(msg,4+8+16+32,preselect=True)
bb=rs.BoundingBox(obj)
rs.AddBox(bb)

You will see that the bounding box is wrong (should correspond to the box you see on the locked layer in the file). It is the bounding box of the visible seam of the sphere, not of the full sphere.

If you shade the object, even if you then switch back to wireframe, the BB is correct. So it works as long as the object has a display mesh. The normal Rhino BoundingBox command must also force meshing, as you see the object display mesh details show up in Properties>Details even if it had none before.

Known bug? Didn’t see it on youtrack. Seems pretty odd that this has never been seen before though…

–Mitch

WrongBB.3dm (41.4 KB)

Well … I think I remember having seen that before (not sure though)
Anyway IMO it looks like one of those little things which in most cases you simply get used to, telling to yourself “Rhino works that way, I’ll have to remember this”.

… But sure I’d be glad if that would change, as you’re asking. :smile:

Yep. But it does have the possibility to give wrong results in a number of scripts, as BoundingBox is an often used function. If the person is running in wireframe and hasn’t shaded objects, script results might be quite wrong. So I do believe it needs to be fixed. I checked in V6 and it’s also wrong, this must be a core RhinoCommon problem.

–Mitch

1 Like

Yes, obviously you’re right.
Talking about bounding box risks, I remember that I found a RhinoCommon geometric object not added to the Rhino document with an empty bounding box (I’m not able to find the forum thread now …)
IIRC, Steve said that that had to be fixed.
I haven’t checked about that bug then …

Got it. Thanks for reporting.

RH-30747