Macro HealArcs/de: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(2 intermediate revisions by 2 users not shown)
Line 17: Line 17:
==Skript==
==Skript==


ToolBar Icon [[Image:Macro_HealArcs.png]]
Werkzeugleistensymbol [[Image:Macro_HealArcs.png]]

'''Macro_HealArcs.FCMacro'''
'''Macro_HealArcs.FCMacro'''


Line 41: Line 40:
removeList.append(obj.Name)
removeList.append(obj.Name)
FreeCAD.ActiveDocument.recompute()
FreeCAD.ActiveDocument.recompute()
print "removing ",removeList
print("removing", removeList)
for n in removeList:
for n in removeList:
FreeCAD.ActiveDocument.removeObject(n)
FreeCAD.ActiveDocument.removeObject(n)

Latest revision as of 16:31, 6 June 2022

HealArcs

Beschreibung
Manchmal werden Bögen in BSplines umgewandelt, z. B. wenn Skalenoperationen darauf angewendet wurden. Dieses Makro erstellt aus ihnen gültige Bögen. Nützlich vor dem Export nach DXF.

Versionsmakro : 0.1
Datum der letzten Änderung : 2011-09-24
FreeCAD version : All
Herunterladen : ToolBar Icon
Autor: Yorik
Autor
Yorik
Herunterladen
ToolBar Icon
Links
Macro-Version
0.1
Datum der letzten Änderung
2011-09-24
FreeCAD-Version(s)
All
Standardverknüpfung
None
Siehe auch
None

Beschreibung

Manchmal werden Bögen in BSplines umgewandelt, z. B. wenn Skalenoperationen darauf angewendet wurden. Dieses Makro erstellt aus ihnen gültige Bögen. Nützlich vor dem Export nach DXF

Skript

Werkzeugleistensymbol Macro_HealArcs.FCMacro

try:
    import DraftGeomUtils as fcgeo
except:
    from draftlibs import fcgeo
import FreeCAD,FreeCADGui,Part

sel = FreeCADGui.Selection.getSelection()
if not sel:
    FreeCAD.Console.PrintWarning("Select something first!")
else:
    removeList = []
    for obj in sel:
        ed = obj.Shape.Edges[0]
        arc = fcgeo.arcFromSpline(ed)
        if arc:
            Part.show(arc)
            removeList.append(obj.Name)
    FreeCAD.ActiveDocument.recompute()
    print("removing", removeList)
    for n in removeList:
        FreeCAD.ActiveDocument.removeObject(n)