I do need to cull the hole faces that are conected to the bottom face of the geometries and retain only the ones that are connected to the top face and the ones which are passing through. Also, if possible I do need to highlight in red the geometries that have holes connected to the bottom face because that means that I need to flip that piece upside-down and make mechanisations also in that face.
I am nesting this 3D parts into sheets using OpenNest, and from there I do need to extract the contours and put them in different layers for CNC mechanization. I already created a quite complex definition, the only issue it is that I can’t find a way to sort the bottom mechanizations so I end-up with all the holes and grooves on the top face which it is not what I need. If I can filter-out the holes and grooves that are connected to the bottom face, then I can easily generate my layers with the contours I do need.
And how I can filter the ones connected only to the bottom face? I do made something similar and I ended up with all the holes and grooves into mechanization.
it will find any surface that is not on top-level or bottom-level, and will show you what is “pointing up” (red) and what is “pointing down” (blue)
it won’t recognize pass-through holes tho, but only blind ones
filter_middle_features.gh (23.0 KB)
[the GH file should work on your last Rhino file, I believe I didn’t use any external plugin for this]
[edit: it works on multiple Breps, if you are to analyze a single brep just bypass the TrimTree]
Yes, I realized on your previous definition when I got an error from “Trim Tree”, that needs at least two pieces to make-it work properly.
A huge thank you for all the support, because now I can ditch AlphaCAM! Basically this definitions are doing what AlphaCAM it does with their SolidExtraction module: