使用Python和FreeCAD将.stl转换为.step

2024-06-28 19:35:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个项目,在Python中将.stl文件转换为.step。我跟踪了thisyoutube视频,了解如何在GUI的帮助下实现这一点。In接受了Python控制台内置的FreeCAD的帮助,并提出了以下脚本。在下面的脚本中,我使用一个名为支架.stl它有一个名为括号的网格。在

Mesh.open(INPUT)
App.setActiveDocument("Unnamed")
App.ActiveDocument=App.getDocument("Unnamed")
FreeCAD.getDocument("Unnamed").addObject("Part::Feature","bracket001")

__shape__=Part.Shape()
__shape__.makeShapeFromMesh(FreeCAD.getDocument("Unnamed").getObject("bracket").Mesh.Topology,0.100000)
FreeCAD.getDocument("Unnamed").getObject("bracket001").Shape=__shape__
FreeCAD.getDocument("Unnamed").getObject("bracket001").purgeTouched()
del __shape__

App.ActiveDocument.addObject('Part::Feature','bracket001').Shape=App.ActiveDocument.bracket001.Shape.removeSplitter()
App.ActiveDocument.ActiveObject.Label=App.ActiveDocument.bracket001.Label
App.ActiveDocument.recompute()

__objs__=[]
__objs__.append(FreeCAD.getDocument("Unnamed").getObject("bracket001001"))

Part.export(__objs__,u"output.step")
del __objs__

上面的代码工作得很好,可以将.stl文件转换为.step

我试图使代码更通用(以说明不同的文件名和不同的网格编号)。以下是我想到的。在

^{pr2}$

但是,脚本并没有按预期工作。它总是创建一个不包含所需部分的固定(非常小)大小的文件。有人能指出我的通用版本有什么问题吗?在


Tags: 文件脚本appstepshapepartstlfreecad