通过 python 分析 10k 个 solidworks 零件

Analyzing 10k solidworks parts through python

上周我一直在断断续续地四处寻找,看看是否有人做过这种类型的工作。不幸的是,我发现很少 python 具体的。

我有一个包含 ~10k solidworks 零件的存储库。我想批量分析这些文件并收集诸如卷、material 等信息,以便获得一些一般统计信息。理想情况下,这将在 python 中,但我们非常欢迎其他语言的解决方案。

我找到的大多数答案都是关于在 VB、C#、C++ 中创建插件以与 Solidworks API 交互,但与仅对零件进行一般统计分析无关。我不想与应用程序交互或构建功能,我只想在没有 Solidworks 的情况下查看文件中的内容。我也在研究 Solidworks 不支持的 Linux。

Нi, 6F4E37

我看到有两种方法可以从 solidworks 文件中获取所需内容,不幸的是,它们都涉及 Windows 和 C#/VB 代码。

  1. 没有 SolidWorks 应用程序。使用 SW Document manager - 一个 允许您访问零件元信息的库。 您将能够获得有关您零件的一些信息,包括 volume.

    我不知道有人试图 运行 Wine 上的文档管理器,拜托 如果您愿意,请分享您的结果。

    请注意,文档管理器库许可证是免费的,前提是 您有有效的 SolidWorks 订阅

  2. 使用 SolidWorks API。您不必创建加载项,您可以 从独立应用程序连接到 solidworks:

    SldWorks swApp = (SldWorks)Activator.CreateInstance(System.Type.GetTypeFromProgID("SldWorks.Application"));
    

    显然,对于这种方法,您需要在计算机上安装 solidowrks。

    另请注意,SolidWorks 不是最稳定的应用程序,每处理 200-400 个文件它就会崩溃,因此您将选择这种方法,您需要密切关注 SolidWorks 实例和如果需要重新启动它。