================================================================================
When transfering constraints to coincident points on deletion of geometry, a tangency/perpendicular constraint
cannot be blindly transfered as the destination edge may not be tangent/perpendicular leading to unexpected behaviour.
However, the user does expect that something that was coincident with such end-to-endpoint constraint (which implicitly includes a coincident constraint)
remains coincident after deletion. Therefore, the change of type to coincident.
This implicitly solves the problem of representation of constraints leading to a crash in coin3d.
fixes#3291
==============================================
Expressions for remapping of geometry where simply wrong.
Surprisingly no bug reports were filed for this one.
=============================================================
Just amazed it was working "so well" without never reseting to zero this.
It might bring advantages and close bugs... who knows!
===========================================================================
Cleaning up ViewProviderSketch, as relative mode is never used for points.
Adapting the recalculation of the initial solution only to non-relative cases.
For relative movement cases (movePoint with relative=true) no cases where such a solution will be advantageous have been identified
and applying a similar solution involves changing the current behaviour too much, as to run the risk of introducing further bugs.
Decision to be revised if such cases where an advantage can be found are discovered.
=====================================================================
fixes#1734
Upon dragging, the initial solution is first calculated and them DogLeg is left with the work of solving for a solution next to the initial solution.
When the change is too big and the gradients are no longer accurate to continue dragging, the dragging flips and jumps.
The solution offered here is, not to update always the solution, as this also creates artifacts, but update it if the dragging goes beyond 20 times the initial dragging distance.
https://forum.freecadweb.org/viewtopic.php?f=3&t=7589#p203580https://forum.freecadweb.org/viewtopic.php?f=3&t=7589#p203712
======================================================
fixes#3091
Autoconstraints did not check whether the arc was CW or CCW, as such the autoconstraint on the second position was sometimes assigned to the start point.
======================================================================
Fixes#3154
About the fix:
- If a non-zero vector is passed to seekAutoConstraint, it will suggest a vertical/horizontal constraint, which does not
make sense in the construction method.
- Passing a zero vector enables to treat it like a point, so for example point on object will be suggested, but not vertical/horizontal constraints.
Double-click detector code was comparing double-click threshold (value =
5) with distance between clicked objects in model space (i.e.
double-click distance threshold was equal to 5 mm in model space
regardless of zoom). The fix changes the comparison to pixels on screen
instead.
This fixes the inability to select sketch entities in quick succession,
when the sketch is small (i.e. less than 40 mm or so).