CAD/CAM/CAE软件开发者、几何建模算法工程师、计算机图形学研究人员、开源软件爱好者。
理解OpenCASCADE(OCCT)开源几何内核的架构与核心模块。
掌握OCCT的基本数据结构、几何造型算法与可视化方法。
能够独立开发基于OCCT的简单CAD应用程序。
OpenCASCADE概述:OpenCASCADE(OCCT)的历史与发展;OCCT的开源协议(LGPL);OCCT的架构(基础类、建模数据、建模算法、可视化、数据交换);OCCT在开源CAD软件中的应用(FreeCAD、Salome)。
开发环境搭建:OCCT源码的下载与编译;CMake配置选项;第三方依赖库的安装(Tcl/Tk、FreeType、OpenGL);开发工具的选择(Visual Studio、Qt Creator);示例程序的运行与调试。
基础数据结构:几何对象(Geom_Geometry:点、线、面、曲线、曲面);拓扑对象(TopoDS:顶点、边、线、面、壳、体、复合体);几何与拓扑的关系;坐标系的表示。
几何建模基础:基本几何体的创建(点、向量、轴、坐标系);曲线的创建(直线、圆、椭圆、样条曲线);曲面的创建(平面、圆柱面、球面、NURBS曲面);几何变换(平移、旋转、缩放、镜像)。
拓扑建模基础:基本拓扑体的创建(顶点、边、线、面);通过几何创建拓扑;扫掠建模(拉伸、旋转、放样);布尔运算(并集、差集、交集);倒角与圆角。
建模算法模块:轮廓的创建与编辑;实体的创建与修改;特征的创建(孔、槽、肋);偏移与抽壳;分模与缝合。
数据交换:STEP文件的读写(STEPControl);IGES文件的读写(IGESControl);STL文件的读写(StlAPI);BREP原生格式的读写。
可视化与交互:OCCT可视化模块(AIS)的架构;视图的创建与管理;交互对象的显示与隐藏;选择机制的实现;动态高亮与拾取。
参数化设计:参数化建模的基本原理;约束的表示与求解;尺寸驱动的实现;设计表的应用;参数化模型的更新。
高级建模技术:自由曲面建模;曲线与曲面的光顺;网格生成与处理;变形与 morphing;逆向工程功能。
应用程序开发:基于Qt的UI框架搭建;文档-视图架构的实现;命令系统的设计;插件的开发与管理;应用程序的打包与部署。
综合实战项目:基于OpenCASCADE的简易CAD应用程序开发,包含几何建模功能(创建基本体、布尔运算)、数据交换(STEP导入导出)、可视化与交互、简单参数化设计。