首页/文章/ 详情

一些开源的CAD库

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家
平台推荐
内容稀缺
12小时前浏览8

前阵子在做某软件的二次开发工作,遇到的最麻烦的事情是前期几何处理工作。

找了一圈,能打的不多,还是简单做个总结,留存备忘。

目前最好的开源几何建模库应该是OpenCASCADE(后面简称OCCT,https://dev.opencascade.org/),此开源库也有不少的成功案例,最典型的是FreeCAD和Salome。然而OCCT是基于C++的,很不幸的是我开发外壳程序使用的C# Winform,导致没有办法直接使用OCCT,想要使用OCCT还得自己去做接口封装,这活儿显然是吃力不讨好的,毕竟用C#开发几何处理软件的属于非主流,就算封装好了似乎也是一次性的工作。

OCCT自己提供了一个C#绑定库OCCTProxy,但这玩意儿目前只支持3种几何格式(Brep、Iges、Step)的导入和5种格式(Brep、Iges、Step、STL、BMP或Gif)的输出。只能说查看几何还勉强能用,但想要真正用起来还得做不少的外部开发工作(如鼠标操作、视图操作、显示控制等),工作量其实还不小。目前市面上倒是有一些基于OCCT的C#绑定库,如AnyCAD Rapid .NET,可以通过Nuget安装,但这个是商业收费版。我一直没找到这玩意儿去哪里买,不买的化它每次会给出一个授权购买窗口,然后还在显示区随机释放一个二维码,跟牛皮癣小广告一样。

基于OCCT的Python绑定倒是不少,比较新且功能较为齐全的有2个:

1、PythonOCChttps://github.com/tpaviot/pythonocc-core

pythonocc 的主要功能特点:

  1. 从 Python 完全访问近一千个 OpenCascade C++ 类。类以及方法/函数使用相同的名称,并尽可能保持相同的签名。
  2. 通过最著名的 Python 图形用户界面(tkinter、pyQt5 和 6、PySide2 和 6、wxPython)实现 3D 可视化。
  3. 使用 threejs 或 x3dom 框架在网页浏览器中实现 3D 可视化。
  4. 在 jupyter notebook 中实现 3D 可视化与操作。
  5. 支持使用最常见格式(IGES/STEP/STL/PLY/OBJ/GLTF)进行数据交换。
  6. 提供用于拓扑操作、惯性计算等的实用 Python 类/方法。

2、CadQueryhttps://github.com/CadQuery/cadquery

CadQuery的主要功能特点:

  1. 使用脚本构建 3D 模型,其描述方式尽可能接近向他人描述对象的方式。

  2. 创建参数化模型,使最终用户能够非常轻松地进行自定义。

  3. 输出高质量(无损)的 CAD 格式,如 STEP 和 DXF,以及 STL、VRML、AMF 和 3MF。

  4. 提供一种非专有的纯文本模型格式,仅使用网页浏览器即可编辑和执行。

  5. 提供高级建模功能,例如倒圆角、曲线拉伸、参数化曲线和放样。

  6. 通过单个零件和其他装配体构建嵌套的装配结构。

各位道友有遇到更好的能支持CAD几何的开源库么?包括几何建模或几何显示,最好是能支持C#的,望不吝赐教,感激不尽。


来源:CFD之道
几何处理二次开发UGpythonECAD控制SALOME装配
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-15
最近编辑:12小时前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2605粉丝 11774文章 796课程 27
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈