Rename Python variable 'tv' to avoid potential conflict with others
(PS. I can't reproduce error caused by this. But there is no harm doing
it either).
Handle editing attachment through an App::Link.
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 (~28 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.
Since Py3.3: 'Py_ssize_t PyUnicode_GetSize(PyObject*)' is deprecated [-Wdeprecated-declarations]
Since Py3.9: 'PyObject* PyEval_CallObjectWithKeywords(PyObject*, PyObject*, PyObject*)' is deprecated [-Wdeprecated-declarations]
Since Py3.9: 'void PyEval_InitThreads()' is deprecated [-Wdeprecated-declarations]
Update parameters for all BRepMesh_IncrementalMesh instances to allow
parallel meshing. This matches what is already done for view
tessellations.
Other positional parameters are filled with their defaults in
BRepMesh_IncrementalMesh, so there should be no behavior change outside
of allowing parallelism.
for faulty geometry output, The user can still see all the error output in the task panel but by default they will see nothing in the Report View as Log is not Enabled for new users. See discussion https://forum.freecadweb.org/viewtopic.php?f=15&t=46803#p402533
========================================
1. The Grid has a default maximum of 10000 lines that is controlled via a new property. The grid is not created (is empty)
if a higher number of lines is necessary. This event is show as a Warning in the Report view.
2. The Grid now checks a new property ShowOnlyInEditMode before deciding whether to show the grid or not. This is a new
mode for ViewProvider2D and derived objects. If the property is set to true (and showGrid is true), the grid is only shown
if the object is in edit mode. If the property is set to false, the grid is shown regardless of whether it is in edit mode
or not (provided that showGrid is true).
3. Grid limits are now encapsulated (private). They can be set via a new function updateGridExtent.