| Descrizione |
|---|
| Script ottimizzato per tutte le lingue e per l'oggetto selezionato o per tutti gli oggetti. Quando si lavora con FreeCAD, a volte si desidera modificare rapidamente lo stile di disegno dell'oggetto con cui si sta lavorando. Questa funzione è disponibile tramite il menu a discesa "Stile di disegno", da cui è possibile selezionare qualsiasi stile di disegno. Questa macro rende disponibili 2 degli stili di disegno come pulsanti cliccabili su una barra degli strumenti, su cui l'utente può fare clic per alternare tra i due stili di disegno. |
| Autore |
| Piffpoof, triplus |
| Download |
| ToolBar Icon |
| Link |
| Raccolta di macro Come installare le macro Personalizzare la toolbar |
| Versione macro |
| 2.0 |
| Data ultima modifica |
| 2020-29-01 |
| Versioni di FreeCAD |
| 0.17 and above |
| Scorciatoia |
| Nessuna |
| Vedere anche |
| Macro Toggle Drawstyle |
Script ottimizzato per tutte le lingue e per oggetti selezionati o tutti gli oggetti.
Sono disponibili tre macro:
Quando si lavora con FreeCAD, a volte è necessario modificare rapidamente lo stile di disegno dell'oggetto su cui si sta lavorando. Questa funzione è disponibile tramite il menu a discesa "Stile di disegno", da cui è possibile selezionare qualsiasi stile di disegno. Questa macro rende disponibili due degli stili di disegno come pulsanti cliccabili su una barra degli strumenti, su cui l'utente può cliccare per passare da uno all'altro.
L'installazione consiste nel copiare i due codici nella directory Macro appropriata e richiamarli dal menu Macro. È decisamente preferibile aggiungerli entrambi a una barra degli strumenti per renderli più facilmente accessibili.
Selezionare un oggetto, quindi fare clic sul pulsante della barra degli strumenti associato o richiamarlo dal menu Macro. Lo stile di disegno dell'oggetto selezionato alternerà uno dei due stili di disegno specificati nel codice della macro (vedere il listato del codice qui di seguito).
Combinazione che attiva o disattiva la modalità di visualizzazione globale quando non è selezionato nulla e / o attiva la modalità di visualizzazione degli oggetti selezionati se gli oggetti sono selezionati. Quando gli oggetti sono selezionati, la modalità di visualizzazione globale viene automaticamente impostata su Come è:
Macro_Toggle_Drawstyle_Optimized.FCMacro
# triplus @ 2016, 2020
# Toggle object/global display mode
# ==============================
# 0 = "As is"
# 1 = "Flat lines"
# 2 = "Shaded
# 3 = "Wireframe"
# 4 = "Points"
# 5 = "Hidden line"
# 6 = "No shading"
globalA = 0
globalB = 3
a = "Flat Lines"
b = "Shaded"
c = "Wireframe"
d = "Points"
objectA = a
objectB = c
# ==============================
from PySide import QtGui
import FreeCADGui as Gui
mw = Gui.getMainWindow()
sel = Gui.Selection.getSelectionEx()
act = {
0: mw.findChild(QtGui.QAction, "Std_DrawStyleAsIs"),
1: mw.findChild(QtGui.QAction, "Std_DrawStyleFlatLines"),
2: mw.findChild(QtGui.QAction, "Std_DrawStyleShaded"),
3: mw.findChild(QtGui.QAction, "Std_DrawStyleWireframe"),
4: mw.findChild(QtGui.QAction, "Std_DrawStylePoints"),
5: mw.findChild(QtGui.QAction, "Std_DrawStyleHiddenLine"),
6: mw.findChild(QtGui.QAction, "Std_DrawStyleNoShading"),
}
default = act[0]
actionA = act[globalA]
actionB = act[globalB]
if sel:
obj = []
default.trigger()
for s in sel:
if s.Object.TypeId == "App::Link":
if s.Object.LinkedObject not in obj:
obj.append(s.Object.LinkedObject)
elif s.Object not in obj:
obj.append(s.Object)
else:
pass
for o in obj:
if o.ViewObject.DisplayMode == objectA:
o.ViewObject.DisplayMode = objectB
else:
o.ViewObject.DisplayMode = objectA
else:
if actionA.isChecked():
actionB.trigger()
else:
actionA.trigger()
Attiva/disattiva modalità di visualizzazione globale:
Macro_Toggle_Drawstyle_Optimized_2.FCMacro
# triplus @ 2016, 2020
# Toggle global display mode
# ==============================
# 0 = "As is"
# 1 = "Flat lines"
# 2 = "Shaded
# 3 = "Wireframe"
# 4 = "Points"
# 5 = "Hidden line"
# 6 = "No shading"
styleA = 0
styleB = 3
# ==============================
from PySide import QtGui
import FreeCADGui as Gui
mw = Gui.getMainWindow()
act = {
0: mw.findChild(QtGui.QAction, "Std_DrawStyleAsIs"),
1: mw.findChild(QtGui.QAction, "Std_DrawStyleFlatLines"),
2: mw.findChild(QtGui.QAction, "Std_DrawStyleShaded"),
3: mw.findChild(QtGui.QAction, "Std_DrawStyleWireframe"),
4: mw.findChild(QtGui.QAction, "Std_DrawStylePoints"),
5: mw.findChild(QtGui.QAction, "Std_DrawStyleHiddenLine"),
6: mw.findChild(QtGui.QAction, "Std_DrawStyleNoShading"),
}
actionA = act[styleA]
actionB = act[styleB]
if actionA.isChecked():
actionB.trigger()
else:
actionA.trigger()
Attiva/disattiva la modalità di visualizzazione degli oggetti selezionati (le modifiche sono visibili solo nella modalità di visualizzazione globale così com'è (situata sulla barra degli strumenti Visualizza)):
Macro_Toggle_Drawstyle_Optimized_3.FCMacro
# triplus @ 2016, 2020
# Toggle selected object(s) display mode
# ==============================
a = "Flat Lines"
b = "Shaded"
c = "Wireframe"
d = "Points"
styleA = a
styleB = c
# ==============================
from PySide import QtGui
import FreeCADGui as Gui
obj = []
mw = Gui.getMainWindow()
sel = Gui.Selection.getSelectionEx()
mw.findChild(QtGui.QAction, "Std_DrawStyleAsIs").trigger()
for s in sel:
if s.Object.TypeId == "App::Link":
if s.Object.LinkedObject not in obj:
obj.append(s.Object.LinkedObject)
elif s.Object not in obj:
obj.append(s.Object)
else:
pass
for o in obj:
if o.ViewObject.DisplayMode == styleA:
o.ViewObject.DisplayMode = styleB
else:
o.ViewObject.DisplayMode = styleA
Link al forum (2016-11-27 ver:1.0 FC =< 0.17) : Keyboard shortcut, View toolbar - Wireframe
Link al forum (2020-29-01 ver:2.0 FC => 0.17) : Keyboard shortcut, View toolbar - Wireframe