Boolean Union of sphere and truncated cone fails

I’m trying to Boolean Union a sphere and a truncated code in Mac Rhino 5A671. When I do this, the truncated code just disappears. The command is not reported as failing. The truncated code is reported as a valid polysurface, and the sphere is a valid surface.

I known I’ve done this with older versions and it’s worked. (Tried uploading a test file but the upload is stalling. Also, why doesn’t “Save Small” make a file < 6MB?)

Simon

Hmm, a sphere and a TCone should not make a 6Mb file… Something pretty wrong there… Try zipping the file as well. --Mitch

I’m guessing the file has embedded image previews. It’s still 6.5MB zipped!

Select the sphere and the tcone and “export selected” (+save small)… Better?

Yeah, 53KbBoolean union exported.3dm (52.0 KB)

6MB file is at http://smfr.org/misc/Boolean%20union%20fail.3dm if anyone wants to see why it’s so huge.

(Sorry to diverge this thread into a file size issue).

Hmm, this looks like a bug - fails in Windows as well. To workaround:

Split>ByIsocurve the sphere at the half to just have the lower half, delete the upper half.
ExtractSrf the lower surface of the TCone, delete.
Select the two parts and Join.

–Mitch

Can’t see offhand why immediately…

Ah, yes, looks like you have some large bitmaps stuck in there. TestPurgeBitmapTable fixes it. This test command may not be available on Mac - haven’t tested.

–Mitch

could it be a tolerance/size issue?

select all then _Scale… pt1 on one quadrant of the top circle, pt2 on the opposing quad… enter 50
(ie- make it a lot bigger)

then the union will work
?

yep, that works on mac too… good to know.
(you have to do something else to the file though in order for it to register… if i open the file, run the test command, then save it… nothing happens…
if i run the test command then draw a line and save it, file size is now at ~100Kb)

Yeah, could be. The tolerance of 0.01 is pretty loose for an object that’s only 0.5cm in diameter. However, raising the tolerance by a couple of orders of magnitude doesn’t help. If you run Intersect between the two objects at the original tolerance you get 6 intersections… At higher tolerances still 3…

Now, if you consider geometrically the intersection of the TCone and the Sphere, you will see that there is a zone of “overlap” - the sphere has vertical tangency at the intersection, but the cone is inclined and actually passes through the sphere for a bit. In a perfect world, there would be two intersections in the form of circles. But in the fuzzy world of NURBS and floating point math, it doesn’t work. Is it really a bug? Not sure anymore.

This is also why everyone should know the manual workarounds for these types of situations…

–Mitch

The optimal way to construct this geometry would be to create a truncated cone whose sloping side is a tangent to the circle. Is there an easy way to do this?

I suppose one option would be to create the cross-section by creating a circle and tangent lines, and then revolve it.

Simon

Yep. Exactly. --Mitch

Hmm - yeah - the cone and the sphere do not meet at the tangent to the sphere - if you set it up exactly right, it does what I think you want. As is, the sphere crosses the cone slightly above the equator and then comes back to meet it again at the equator so there is this very tiny slice of sphere that has to be accounted for.

Boolean union exported_PG.3dm (79.9 KB)

-Pascal