asnowcappedromance Posted January 25, 2012 Share Posted January 25, 2012 Hey guys, I created a tool which allows me to break hundreds of objects at the same time in a particular fashion. And that works quite well except for 1 or 2 pieces where the Boolean method of the Break SOP always fails. (depending on the seed the seed it's always different pieces that fail to get cut correctly.) So what I'd like to do is to check the geometry for any issues, like open edges or something and then just change the seed if the boolean operation fails in order to try it again. In 3DS Max for example there is a modifier called STL Check STL Check example which one could use to detect if cutting operations went well or not. Is there a similar thing in Houdini or any node that could help me? Any ideas? thanks, Manu Quote Link to comment Share on other sites More sharing options...
Macha Posted January 25, 2012 Share Posted January 25, 2012 Would the clean sop help? Quote Link to comment Share on other sites More sharing options...
Jason Posted January 25, 2012 Share Posted January 25, 2012 Manu; check the new PolyDoctor SOP in H12 Quote Link to comment Share on other sites More sharing options...
asnowcappedromance Posted January 25, 2012 Author Share Posted January 25, 2012 thanks for the quick response guys! Macha: clean SOP works, I can remove degenerate prims and compare polycounts to see if an object is corrupt. Jason: -Thanks a lot, exactly what I was looking for - what a great useful op, the fact that you can mark geometry with issues is amazing! cheers, Manu Quote Link to comment Share on other sites More sharing options...
asnowcappedromance Posted February 9, 2012 Author Share Posted February 9, 2012 so after 2 weeks of breaking stuff I came up with a pretty fireproof method of procedurally cutting up tons of geometry with a custom tool and one method to check for open edges made things a lot easier: The "unshared edges" in the group SOP. This way I could easily detect corrupt pieces and reiterate them, just by checking if the group contains any points ( argc(pointlist("../corruptGroup", "corruptGroup") ) ) Maybe this helps someone who gets frustrated trying to procedurally apply boolean operations to objects cheers! 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.