【问题标题】:Convert .sldprt file to .stl using Python script使用 Python 脚本将 .sldprt 文件转换为 .stl
【发布时间】:2019-05-02 06:12:23
【问题描述】:

最近我一直致力于将五种文件格式(.dae、.stl、.step、igs、obj)转换为 .stl。使用 FreeCAD Python 控制台以及 StackOverflow 和 FreeCAD 论坛上人们的帮助,我能够做到这一点。

此作业的最后一部分是将 .sldprt(Solidworks 零件文件)转换为 .stl。不幸的是,FreeCAD 不支持导入此文件格式,我无法使用其 Python 控制台将此文件格式转换为 .stl。

我一直在搜索可以读取/导出 .sldprt 文件的 Python API,但我没有找到。我确实找到了一些在线资源(GradCAD、Datakit Cross manager 等),但我需要通过 Python 脚本(最好是 Python 2)来完成。

还有其他方法可以使用 Python 将 .sldprt 文件转换为 .stl 吗?有人能指出我从哪里开始吗?

【问题讨论】:

    标签: python solidworks stl-fileformat


    【解决方案1】:

    由于 sldprt 是一种专有格式,因此只有在执行机器上安装了 SOLIDWORKS 时才能执行此操作。这是通过 SOLIDWORKS API 完成的。排除这种情况后,您将需要在 Python 和 SOLIDWORKS COM API 对象之间编写某种桥梁,这很麻烦。如果这是一项学校作业,我建议您使用 C# 或 VB.NET 编写一个控制台应用程序,以打开文件并将其转换为任何目标格式。您可以从 Python 程序命令该应用程序。

    有很多云服务可以进行 CAD 文件转换。如果您买不起 SOLIDWORKS 许可证或无权访问,这些可能是一个不错的选择。

    【讨论】:

    • 感谢您的回复。我也可以用 C# 编程,而且我确实在网上看到了一些教程。是否可以下载 SolidWorks 的免费试用版并在 C# 程序中使用这些 .dll?
    • 另外,正如@efirvida 所说,我不能简单地使用 Autodesk Fusion API 来进行导入导出吗?这听起来容易多了。
    • 是的。您可以下载试用版。
    • 是的。您可以使用 Fusion API。这是我回答的第二部分。
    【解决方案2】:

    Autodesk Fusion 360 使用 Python API 并从 SolidWorks 导入 cad 文件并导出为其他格式,请查看以下示例:

    1. import
    2. export

    【讨论】:

    • 感谢您的回答!我浏览了 API,它看起来很不错。我确实找到了导出到 .stl 的链接。但是,我没有找到任何关于导入 .sldprt 文件的参考。您确定 Autodesk Python API 可以导入/处理 .sldprt 文件吗?
    • @UmarDastgir,我真的不知道我从未使用过,但 Fusion 360 可以导入 sldprt 文件。看看这个线程,help.autodesk.com/view/fusion360/ENU/?caas=caas/discussion/t5/…...也许 app.importManager.createFusionArchiveImportOptions() 工作
    猜你喜欢
    • 1970-01-01
    • 2021-08-31
    • 2023-01-22
    • 1970-01-01
    • 2022-12-17
    • 1970-01-01
    • 2014-05-24
    • 1970-01-01
    • 2017-11-24
    相关资源
    最近更新 更多