From c263aaa94ec105035a8a76cf60851f87807d3463 Mon Sep 17 00:00:00 2001 From: "Zheng, Lei" Date: Fri, 20 Oct 2017 04:29:18 +0800 Subject: [PATCH] Add auto recompute command --- .../icons/Assembly_AutoRecompute.svg | 1198 +++++++++++++++++ assembly.py | 3 +- gui.py | 5 + 3 files changed, 1205 insertions(+), 1 deletion(-) create mode 100644 Gui/Resources/icons/Assembly_AutoRecompute.svg diff --git a/Gui/Resources/icons/Assembly_AutoRecompute.svg b/Gui/Resources/icons/Assembly_AutoRecompute.svg new file mode 100644 index 0000000..61b6db9 --- /dev/null +++ b/Gui/Resources/icons/Assembly_AutoRecompute.svg @@ -0,0 +1,1198 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + [jmaustpc] + + + Assembly_Assembly_Create_New + 2013-12-24 + http://www.freecadweb.org/wiki/index.php?title=Artwork + + + FreeCAD + + + FreeCAD/src/Mod/Assembly/Gui/Resources/icons/Assembly_Assembly_Create_New.svg + + + FreeCAD LGPL2+ + + + https://www.gnu.org/copyleft/lesser.html + + + [agryson] Alexander Gryson + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assembly.py b/assembly.py index a7ac9dc..2d082f9 100644 --- a/assembly.py +++ b/assembly.py @@ -785,7 +785,8 @@ class AsmConstraint(AsmGroup): for e in selection.Elements: AsmElementLink.make(AsmElementLink.MakeInfo(cstr,*e)) cstr.Proxy._initializing = False - cstr.recompute() + if cstr.recompute() and asm3.gui.AsmCmdManager.AutoRecompute: + asm3.solver.solve(cstr.Proxy.getAssembly().Object) return cstr diff --git a/gui.py b/gui.py index c159874..8dc73ca 100644 --- a/gui.py +++ b/gui.py @@ -231,3 +231,8 @@ class AsmCmdTrace(AsmCmdCheckable): _menuText = 'Trace part move' _iconName = 'Assembly_Trace.svg' +class AsmCmdAutoRecompute(AsmCmdCheckable): + _id = 5 + _menuText = 'Auto recompute' + _iconName = 'Assembly_AutoRecompute.svg' + _saveParam = True