=======================================================
The instructions are shown on the status bar.
press CTRL to allow cross-body link
press ALT to by-pass directional requirements
press CTRL+ALT to allow a cross-body link and by-pass directional requirements
=====================
Carbon copy checks for parallel planes, translated origin and rotated axes, so that it can provide flipping detection when using reverse mappings.
This commit enables you to press CTRL will activating the tool in order to bypass this checks. Without the checks you will get a sketch exactly as the one
you want to copy, there are no corrections at all. This enables you to copy a profile on a new plane at a different direction for example for lofting purposes.
===============================================
New convenience for the user. If the first pole is radius length constraint, then any newly exposed internal geometry is created with equality constraint to the first pole.
This is really convenient in the case the user is working with polynomic bsplines, as any operation involving losing/gaining a pole (for example increase in multiplicity of a knot).
=================================================================
Very important remark:
Until now, points could not be construction = true.
For now on, if a point is construction = true, the solver will ignore it.
Modifying a check in SketchObject::validateExternalLinks() for datums.
Hopefully will not cause trouble.
There is still a problem where if the check fails, all constraints will
be lost!
===============================================
This commit changes the behaviour of expose internal geometry for bsplines and makes it converge with the implementation for other complex forms.
This functionality now does not introduce constraints (the DoF is not affected by its execution).
BSplines, when created, are still created as polynomic. However, exposing previously deleted or otherwise hidden (increase of degree) poles does not
constraint them.
why?
While a priori the old behaviour is advantageous for the user in many situations, it severely breaks NURBS-ized shapes and gets in the way of bsplines after
increasing the degree of the bspline.
===============================================================
The implementation of BSpline differs from previous complex forms.
The BSpline is created constraint to be polynomic (non-rational), with radius of first circle and equality constraints.
Hide unused internal geometry considers as unused the following constraints:
- A pole which has equality constraints with another pole of the same bspline
- Any radius constraint on a pole
Deletion of a BSpline will delete the internal geometry that is unused as per the definition above.
If there is another constraint (other than the Internal alignment constraint) it will leave the internal geometry having such constraint undeleted.