FreeCAD: master a21265f9
|Abdullah Tahiri||wmayer||master||2015-06-06 15:27:12||master 0e92e635|
|Affected Issues||0000491: Sketcher: Do not recompute dependent objects if in edit mode|
|Changeset||Sketcher: New Feature: Avoiding to continuously recompute all the sketch (and dependent objects)
There is a checkbox, default disabled, that makes the commands NOT to generate a recompute after each.
This means that if you are editing a sketch that is used to generate a pad or pocket, if the checkbox is
disabled, the dependent objects do not get recomputed.
There is a button next to it to force a manual recompute, in case it is needed.
If the user wants the previous behavior, he only needs to activate the checkbox. The previous status of the box
is restored upon entering a sketch in edit mode.
It is remarkable the case of the Fillet and Trim
On changing ActSketch (solvedSketch) to SketchObject and making movePoint not systematically update the geometry, the solving in MovePoint was confronted with solving for "the last solved geometry",
which is the default behaviour, in some situations (Fillet and Trim) where geometry had changed at SketchObject level, and was the subject of the moving actions.
MovePoint has been updated to take an extra optional parameter, to force the change in solved geometry in those situations.
Some other minor bug also fixed in Fillet creation in CommandCreateGeo.cpp
This commit also introduces conditional recompute on some operations of:
- geometry creation (reubication of update active to comprise the autoconstraints within a single UpdateActive)
|mod - src/Mod/Sketcher/App/SketchObject.cpp||Diff File|
|mod - src/Mod/Sketcher/App/SketchObject.h||Diff File|
|mod - src/Mod/Sketcher/Gui/CommandConstraints.cpp||Diff File|
|mod - src/Mod/Sketcher/Gui/CommandCreateGeo.cpp||Diff File|
|mod - src/Mod/Sketcher/Gui/DrawSketchHandler.cpp||Diff File|
|mod - src/Mod/Sketcher/Gui/EditDatumDialog.cpp||Diff File|
|mod - src/Mod/Sketcher/Gui/TaskSketcherMessages.cpp||Diff File|
|mod - src/Mod/Sketcher/Gui/TaskSketcherMessages.h||Diff File|
|mod - src/Mod/Sketcher/Gui/TaskSketcherMessages.ui||Diff File|
|mod - src/Mod/Sketcher/Gui/ViewProviderSketch.cpp||Diff File|