FreeCAD: master 487215d2

Author Committer Branch Timestamp Parent
Gabriel Wicke wwmayer master 2020-06-23 01:54:25 master 648b3bbe
Changeset [part] More robust tessellation angular deflection default

OCC currently does not reliably enforce linear deflection on curved
surfaces, especially curved lofts over nurbs splines. To avoid surprises
when tight tolerances are needed, replace the static default angular
deflection of 0.5 radians (0000031:0000028 degrees), with a more sensible angular
deflection derived from the provided linear deflection tolerance.

By adding the default heuristic to TopoShape, we can keep typical
tessellate() and STL export functionality users simple, and also avoid
the need to implement similar heuristics in many places. If more
explicit control over angular deflection is needed for some use cases,
then we could still choose to expose the option to override the derived
default explicitly.

The hope is that OCC's linear deflection enforcement will be more
reliable at some point, at which point this heuristic will no longer be
needed.
mod - src/Mod/Part/App/TopoShape.cpp Diff File