CAM Development Roadmap
Purpose
This page will discuss strategic objectives for Path Workbench. This is not a list of individual features to implement but broader objectives that will steer the overall direction of Path development.
For a list of specific features, please check Mantis.
Core Objectives
These things make Path a reliable, performant, and flexible tool. Work in this area is never-ending and always high priority.
- Broad test coverage
- DRY code base
Tool Paths
work strategies that we currently cannot support but should
Lathe operations
- Center Drill
- Contour Roughing - Remove material to approximate
- Contour Finishing - Contour finishing pass
- Facing
- Boring
- Threading External
- Threading Internal
2D
- Engrave - Engrave by following a set of 2D edges
- V-Carve - Engrave by following the centerline between edges while controlling Z depth
- Hatch Fill - Fill an arbitrary boundary with a hatching pattern
2.5D
- Threading
- Boring - Straightline Boring Canned operation (G85/G89)
- Slitting Saw - Slot cutting with saw tool
- Slot Cut - Run cutter between two parallel surfaces
Path Modifications
- should be able to use the same boundary extension types for all operations where it makes sense. For example adaptive, surface, waterline,
Post Processing
- Post to git
Gcode for the hobbyist is transient. It's used once and then likely not retained. If the user needs it again, they simply re-post the original file. For commercial users under certain certification standards, the gcode is a long-term asset and often may require version control protection. Integrating version control directly into the post-processing workflow might be an interesting feature.
- modular output for older machines with limited memory.
Many old machines have an extremely limited capacity for gcode. While physically able to produce more complex paths, the very large output from surfacing and adaptive toolpaths make them unusable. It would be useful to post-process the output with an eye on the size of the resulting file. As a file reaches a maximum size, the post-processor could insert a spindle retraction and stop gracefully, then the next file could continue. Output files would be numbered to indicate sequence.
Workflow
- Robust support for 2D workflows
2D workflows like laser/waterjet/plasma have some unique requirements. We need to improve the workflow for these kinds of tools
Nesting of parts into cut sheets marking for part ID, fold lines, stitching, etc. Efficient import from DXF
Path Analysis
- Tip up Prediction / avoidance
When 2D cutting (laser/waterjet/plasma) of material supported on a grating, small parts cut out of the main stock can 'tip up' creating a crash hazard for the cutting tool during subsequent moves. Being able to predict these events or avoid them by ordering paths would be desirable. (Further reading)