Booleans: Tricky geo?

   2077   4   0
User Avatar
Member
196 posts
Joined: Aug. 2011
Offline
Hi,

I'm trying to add all the volumes in the attached obj to 1 solid.


Each of the parts is solid. I use an assemble SOP to nicely separate them by connectivity. Then I feed the volumes into the boolean SOP, but the resulting mesh still has interior faces.

I'm sure the coplanarity of some faces might cause some issues, but as the volumes are well-defined solids, I assume this should work…

[[
Using a VDB to add up the volumes works well enough, but I really need a resulting topology as close to the original as possible.
Maybe SideFx could implement a guide-geometry input (e.g. derived via VDBs) to the boolean SOP that allows the user to give a rough estimate on how the result should look like ..
]]

Any inputs on how I can make this work?

Thanks!
m.

Attachments:
booles.zip (12.2 KB)

User Avatar
Member
2523 posts
Joined: June 2008
Offline
You do have groups inside your OBJ file. In this image I used the Delete SOP to isolate each group then recombine them via a series of boolean operation.
Edited by Enivob - May 20, 2017 10:31:49

Attachments:
Untitled-1.jpg (203.3 KB)
ap_booles.hipnc (65.1 KB)

Using Houdini Indie 20.0
Ubuntu 64GB Ryzen 16 core.
nVidia 3050RTX 8BG RAM.
User Avatar
Member
8506 posts
Joined: July 2007
Offline
first of all your poly normals are flipped, just put Reverse SOP before boolean (no need for Assemble SOP) and you may want to treat it as solid or whatever works for your needs as I see you were using Assemble SOP to create isolated surfaces (Cusp Edges On) not sure that is an intention
Tomas Slancik
FX Supervisor
Method Studios, NY
User Avatar
Member
196 posts
Joined: Aug. 2011
Offline
hi guys!

many thanks for the inputs, especially the normals!!

I'll play with this.
User Avatar
Member
196 posts
Joined: Aug. 2011
Offline
hi again ..

I have tracked the issue down and it seems the rotation of ‘touching’ volumes causes an issue where the boolean operation sometimes works, sometimes sadly not. The result should ‘add’ the two volumes to a single solid.

Please see the attached simple example. edit the y rotation in the red transformation node.

by ‘definition’ of the node, the 2 boxes should touch each other perfectly, but at some rotations, it seems the boolean SOP has a precision issue with the coplanarity of 2 primitives.

Any inputs that could help with this? (Scaling the objects so they ‘actually intersect’ is not feasible for my workflow, as it introduces other issues.)

Attachments:
booleanPrecisionIssue.zip (46.5 KB)

  • Quick Links