first commit
This commit is contained in:
parent
9dbb93dfa7
commit
541f7aebba
55
exportSketchEnMasse-SVG.FCMacro
Normal file
55
exportSketchEnMasse-SVG.FCMacro
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
# Exporte en SVG de plusieurs Sketchs
|
||||||
|
|
||||||
|
# On charge le module d'importation/exportation SVG :
|
||||||
|
import importSVG
|
||||||
|
|
||||||
|
# Racine des noms de fichiers SVG, les nom de fichiers de sortie seront construits
|
||||||
|
# sous la forme : outputRacine + '--<Sketch_Label>.svg.
|
||||||
|
# Ou <Sketch_Label> est le label du Sketch exporté.
|
||||||
|
outputRacine = App.activeDocument().getFileName().rpartition('.')[0]
|
||||||
|
|
||||||
|
# Initialise la liste des objets à exporter
|
||||||
|
__objets__ = []
|
||||||
|
|
||||||
|
'''
|
||||||
|
On peux également n'exporter qu'une liste de label définis comme ceci :
|
||||||
|
Remplacer la boucle "for __O__ in App.ActiveDocument.findObjects('Sketcher::SketchObject'):"
|
||||||
|
par le bloc ci dessous:
|
||||||
|
'''
|
||||||
|
'''
|
||||||
|
# Retrouve les objets Sketch FreeCAD à partir d'une liste de labels
|
||||||
|
for __label__ in ["fond", "hauteur", "largeur", "carton-blanc", "plot"]:
|
||||||
|
for __obj__ in App.ActiveDocument.getObjectsByLabel(__label__):
|
||||||
|
__objets__.append(__obj__)
|
||||||
|
|
||||||
|
# Boucle sur la liste des objets trouvés :
|
||||||
|
for __obj__ in __objets__:
|
||||||
|
'''
|
||||||
|
|
||||||
|
# Boucle sur tous les objets Sketch du fichier :
|
||||||
|
for __O__ in App.ActiveDocument.findObjects('Sketcher::SketchObject'):
|
||||||
|
|
||||||
|
__obj__ = []
|
||||||
|
__obj__.append(__O__)
|
||||||
|
|
||||||
|
print('Export SVG de : ' + __obj__[0].Label)
|
||||||
|
|
||||||
|
# Mémorise le placement du Sketch
|
||||||
|
oldPlace = __obj__[0].Placement
|
||||||
|
|
||||||
|
# Force le Sketch dans le plan XY, l'export SVG ne fonctionne que dans ce plan !
|
||||||
|
__obj__[0].Placement=App.Placement(App.Vector(0,0,0), App.Rotation(App.Vector(1,0,0),0), App.Vector(0,0,0))
|
||||||
|
|
||||||
|
# Construction du nom de fichier
|
||||||
|
fichierSVG = u"" + outputRacine + '--' + __obj__[0].Label + '.svg'
|
||||||
|
|
||||||
|
# Exporte en SVG
|
||||||
|
importSVG.export(__obj__, fichierSVG)
|
||||||
|
|
||||||
|
# Restore la position du Sketch
|
||||||
|
__obj__[0].Placement = oldPlace
|
||||||
|
|
||||||
|
# Force un recalcul de tous les objets du fichier
|
||||||
|
# après réinitialisation des positions des Sketchs
|
||||||
|
App.activeDocument().recompute()
|
||||||
|
|
Loading…
Reference in a new issue