Clipper upgrade roadmap
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# STATUS:
|
||||
|
||||
Active
|
||||
|
||||
# Why it is a priority
|
||||
|
||||
Our geometry libraries limit what we can do with CAM. Currently, we are
|
||||
dependent on an obsolete version of Clipper and unmaintened libarea and kurve
|
||||
libraries. These libraries do not receive feature updates or bug fixes.
|
||||
Updating to Clipper 2 and removing our dependency on these libraries will make
|
||||
the CAM workbench more maintainable and improve tool paths by enabling new
|
||||
features such as non-heuristic arc fitting.
|
||||
|
||||
|
||||
# Scope
|
||||
|
||||
This epic is about upgrading from Clipper 1/libarea/kurve to Clipper 2, and the CAM improvements enabled by that upgrade.
|
||||
|
||||
| In | Out |
|
||||
| --- | --- |
|
||||
| Add Clipper 2 to FreeCAD | Research other new libraries to add to FreeCAD |
|
||||
| Migrate operations from Clipper 1 to Clipper 2 | |
|
||||
| Replace uses of libarea and kurve with Clipper 2, and as needed, custom wrappers | |
|
||||
| Remove libarea and kurve from the FreeCAD | |
|
||||
| Expose Clipper 2 functionality to Python | |
|
||||
| Implement correct curve fitting using Clipper 2's IntPoint user data feature | |
|
||||
| Implement algorithm/performance improvements in Adaptive using Clipper 2 features| |
|
||||
|
||||
# Related Epics
|
||||
@@ -73,6 +73,7 @@ We agree these things should get collective attention because they are larger th
|
||||
| [Improve Circular Holes](Epics/Circular%20Holes%20Improvement.md) | Improve the user experience and efficiency of Circular holes operations | Active |
|
||||
| [Improve Core Dressups](Epics/ImproveCoreDressups.md) | Improve the user experience and feature completion of core dressups | Active |
|
||||
| [Improve Adaptive Operation](Epics/ImproveAdaptiveOperation.md) | Improve the user experience and feature completion of Adaptive | Active |
|
||||
| [Clipper 2 Upgrade](Epics/Clipper.md) | Upgrade Clipper 1/libarea/kurve to Clipper 2 | Active |
|
||||
|
||||
# Priorities
|
||||
*(When evaluating Pull Requests, the following priorities will be considered)*
|
||||
|
||||
Reference in New Issue
Block a user