FreeCAD: master 905d9d65
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
Gabriel Wicke | Gabriel Wicke | master | 2020-06-08 03:09:55 | master c8ce1283 |
Changeset | Path: Area fixes and robustness tweaks - Bug fix: Fix crasher in discretize() when the edge to discretize is not a 3d curve, and a nullptr is returned when trying to access the underlying curve. This change essentially removes an older work-around for QuasiUniformDeflection, which is no longer needed since we are using UniformDeflection. This change is tested with the original test case from https://forum.freecadweb.org/viewtopic.php?f=15&t=42628, as well as my own crasher test case. - WireJoiner robustness: Support passing in a tolerance into WireJoiner::findCloseWires(), and initialize this to AreaParameter.Tolerance. In testing, this significantly improves the ability to join projected areas in complex 3d surface path models. - Area::project() robustness: Pass the work plane down into the projection area instance, so that it does not need to be derived from shapes. This avoids crashing out on "shapes are not coplanar" from getPlane, when lenient processing was requested via the Coplanar parameter. |
|||
mod - src/Mod/Path/App/Area.cpp | Diff File | |||
mod - src/Mod/Path/App/Area.h | Diff File |