【问题标题】:Convert STEP file type to STL将 STEP 文件类型转换为 STL
【发布时间】:2019-09-06 22:45:18
【问题描述】:

我想使用 Python 将 STEP 文件转换为 STL 文件格式。我在网上看过,看起来最好的选择是使用 FreeCAD 或 OpenCascade (OCC)。但是,我是初学者,不知道从哪里开始。我在网上做了一些搜索,发现this out(将STEP转换为OBJ文件的代码)。

是否有来自 FreeCAD(基于 OCC)的 Python 示例将 STEP 文件转换为 STL?我应该从哪里开始?

【问题讨论】:

    标签: step stl-format freecad


    【解决方案1】:

    下面是一些快速开始的代码:

    import FreeCAD
    import Part
    import Mesh
    shape = Part.Shape()
    shape.read('my_shape.step')
    doc = App.newDocument('Doc')
    pf = doc.addObject("Part::Feature","MyShape")
    pf.Shape = shape
    Mesh.export([pf], 'my_shape.stl')
    

    FreeCAD 将 python 广泛用于面向用户的功能。基本上,你通过 UI 做的任何事情都是用 python 完成的。

    因此,打开 UI,打开 Python 控制台,然后手动执行某个功能是很有用的。您通常可以直接从控制台复制 python 并对其进行编辑以满足您的需求。

    【讨论】:

    • 感谢您的回复。我是这个流的完整初学者。是否可以使用 pip and run 和 IDLE 脚本下载 FreeCAD、Part 和 Mesh 库?我该如何继续为此制作一个独立的 python 脚本?
    • 不使用 Pip。 Mesh 和 Part 库随 FreeCAD 一起安装并且应该在系统路径中。所以上面的脚本应该作为一个独立的 python 脚本工作。有关更多信息,请参阅此页面:freecadweb.org/wiki/Embedding_FreeCAD
    • 我能够将 STEP 转换为 STL 文件格式。但是,我在将 Collada (.dae) 转换为 STL 时遇到了问题。我注意到 FreeCAD 软件允许您导入 .dae 文件并将其保存为 .stl 格式。但是,我找不到任何代码。你知道我可以做到这一点的方法吗?
    • 我通过导入一个 .dae 并导出一个 .stl 进行了测试,它运行良好。我确实必须先手动安装 pycollada。
    • 在您提供的上述代码中,我尝试通过将 shape.read('my_shape.step') 替换为 shape.read('my_shape.dae') 来导入 .dae 文件(并且我有一个 my_shape .dae 文件在同一目录中)。我还安装了 pycollada ind 导入了该模块(import collada)。但是,我在 shape.read('my_shape.dae') 文件中收到错误消息“shape.read('wolf.dae') Base.FreeCADError: {'sclassname': 'N4Base13FileExceptionE', 'sErrMsg': 'Unknown extension ', 'sfile': '', 'iline': 0, 'sfunction': '', 'swhat': '', 'btranslatable': False, 'breported': True, 'filename': ''}"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 2019-04-18
    • 2016-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    相关资源
    最近更新 更多