commit macro + readme
This commit is contained in:
commit
29417ea51a
49
QuickSVGExport.FCMacro
Normal file
49
QuickSVGExport.FCMacro
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
import importSVG
|
||||||
|
import Draft
|
||||||
|
|
||||||
|
outputRacine = App.activeDocument().getFileName().rpartition('.')[0]
|
||||||
|
|
||||||
|
# -------- REPRISE DE LA MACRO "exportSketchEnMasse-SVG" de Gauthier Brière -------- #
|
||||||
|
|
||||||
|
def exportSketch(sketchList):
|
||||||
|
for __O__ in sketchList:
|
||||||
|
__obj__ = []
|
||||||
|
__obj__.append(__O__)
|
||||||
|
|
||||||
|
print('Export SVG de : ' + __obj__[0].Label)
|
||||||
|
|
||||||
|
oldPlace = __obj__[0].Placement
|
||||||
|
__obj__[0].Placement=App.Placement(App.Vector(0,0,0), App.Rotation(App.Vector(1,0,0),0), App.Vector(0,0,0))
|
||||||
|
fichierSVG = u"" + outputRacine + '--' + __obj__[0].Label + '.svg'
|
||||||
|
importSVG.export(__obj__, fichierSVG)
|
||||||
|
__obj__[0].Placement = oldPlace
|
||||||
|
App.ActiveDocument.removeObject(__O__.Label)
|
||||||
|
|
||||||
|
App.activeDocument().recompute()
|
||||||
|
|
||||||
|
# -------- END -------- #
|
||||||
|
|
||||||
|
sketchList = []
|
||||||
|
|
||||||
|
for selectedObject in Gui.Selection.getSelectionEx():
|
||||||
|
try:
|
||||||
|
if hasattr(selectedObject.Object, 'Dir'):
|
||||||
|
sv0 = Draft.make_shape2dview(selectedObject.Object, FreeCAD.Vector(selectedObject.Object.Dir))
|
||||||
|
sv0.ViewObject.LineColor = (1.0, 0.0, 0.0)
|
||||||
|
elif hasattr(selectedObject.Object, 'Objects'):
|
||||||
|
for child in selectedObject.Object.Objects:
|
||||||
|
if hasattr(child, 'Dir'):
|
||||||
|
sv0 = Draft.make_shape2dview(selectedObject.Object, FreeCAD.Vector(child.Dir))
|
||||||
|
sv0.ViewObject.LineColor = (1.0, 0.0, 0.0)
|
||||||
|
break
|
||||||
|
print("FAILURE IF")
|
||||||
|
FreeCAD.ActiveDocument.recompute()
|
||||||
|
sk = Draft.make_sketch(sv0, autoconstraints=True)
|
||||||
|
FreeCAD.ActiveDocument.recompute()
|
||||||
|
sketchList.append(sk)
|
||||||
|
if hasattr(sv0, 'Name'):
|
||||||
|
App.ActiveDocument.removeObject(sv0.Name)
|
||||||
|
except:
|
||||||
|
print("FAILURE TRY")
|
||||||
|
|
||||||
|
exportSketch(sketchList)
|
||||||
Loading…
Reference in a new issue