Path.Area is aimed to fully expose the power of libarea/ClipperLib. It is a python scriptable object, which is backed by Path::Area c++ class. Path::FeatureArea is the companion document object. This single feature is capable of doing:
- Boolean operation on planar shapes (Union, Difference, Intersection, Xor)
- Multi-pass 2D offset
- Generating pocketing tool path
- Multi-slicing of solid shapes
- Stroke of generated path
- Any combination of the above steps within one feature, with linked children Part.Feature derived objects
- Exposed many libarea and ClipperLib internal settings for fine tuning
Let start with a cylinder Part. Say I want to mill this shape out of a Cube material. Just go head create the two objects. Now, activate the Path workbench. First select the Cube, then the Cylinder, and finally click the Path Area (circled in red) button This creates a Path::FeatureArea with two children shapes. It uses the first planar face it can find as the workplane, all other non-coplanar shapes are ignored. Now we need to change the workplane. Hide FeatureArea, show the Cube. Now select the FeatureArea in the treeview (this way we selects the whole object, not any sub elements), and hold on control key to select a face on the Cube (usually the XY face), finally click the button right besides Path.Area button. Once the button is clicked, the FeatureArea will be shown with the swithced face. Hide the Cube to confirm, Show back the Cube, click FeatureArea in the tree view, change Operation from Union to Difference. Now, let the fun begin. Click FeatureArea in the treeview, scroll down to Section, enter -1 in Section Count, you will get this, Wait, I can only attach five pictures? Bummer