===============================================================
Forum test and comments:
https://forum.freecadweb.org/viewtopic.php?p=536445#p536390
What?
Showing/hidding a large amount of constraints is very time consuming
Why?
Because SketchObject Constraints property was being set for each individual constraint
Solution is to use the new setVirtualSpace overload taking a list or a tuple, so that all the
constraints are set in a single operation.
In a Debug system with the test of the forum the time taken by the operation is reduced
from 7 minutes to around 2-3 seconds.
=====================================
Rectangular Array gets a snap mode every 10 degrees when pressing CTRL (for consistency with Multiline arc, which also snaps using CTRL).
Request:
https://forum.freecadweb.org/viewtopic.php?p=535691#p535691
===================================================
Updates the visibility to the filter selection on the moment of checking the "track filter selection" checkbox.
======================================================================================
Hiden constraint icons should not be grouped into combined icons. This may also improve selection of combined (stacked) icons.
fixes#4590
=======================================================================
Add new option so that the 3D view constraint visibility track the constraint widget filter selection.
It maintains internally two mutually exclusive virtual spaces and the ability to select one as visible (the other remaining hiden).
===========================================
- Remove "Normal" as it did exactly the same as "All".
- Add "Geometric" to filter only Geometric (non datum) constraints
- Add all individual constraint types to filter.
As per request:
https://forum.freecadweb.org/viewtopic.php?p=534176#p534176
LGTM complains about using continue statements inside a loop
whose condition is always false. In addition, the C++ core guidelines
recommend against using the do...while construct, and in this case it
was really serving as a goto, just hiding the actual goto keyword.
This commit replaces the loop and continue structure with simple
conditionals.
In practical work it turned out that the slot command is not as convenient as it should because one cannot snap to a proper endpoint and one is restricted to work perpendicular to the sketch axes
This PR fixes this by setting the second snap point to the center of the second arc and removing the perpendicularity.
Benefits:
when you want to get the slot at a line, edge or sketch axis, set the two center points accordingly. The line does not have to be parallel to one of the sketch axes
when you want to define the slot using 2 points in the sketch you can do this now