OpenCASCADE开发指南:专栏内容介绍及目录

1、专栏介绍

1.1 几何内核

在三维建模软件和仿真软件中,我们经常能听到到"几何内核 "一词。那么几何内核是究竟什么是几何建模内核?先说结论:几何没有内核,就没有CAD软件

从软件的历史中可以清楚地看到,创建工业级几何建模内核是开发工程软件中最困难的任务之一。找到正确的解决方案需要具备数学、计算机系统架构、软件设计和CAD专业知识等方面的顶级能力。目前全球市场上只有少数内核供应商;CAD市场的很大一部分以及相关产品在商业和技术上都依赖于它们。

CAD技术从60年代诞生以来,经历了二维绘图、线框模型、自由曲面模型、实体造型、特征造型等重要发展阶段。几何三维核是一种软件组件,用于在计算机上以3D形式表示和精确建模物理对象。从内核开始开发最终用户应用程序,如CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAE(计算机辅助工程)以及许多其他工程领域的产品。所有这些系统都需要精确、高效的工具来使用软件模型来创建、存储和分析3D数据,执行专门的计算等等。随着CAD技术的发展也诞生了许多成熟和知名的CAD引擎和软件。其中最重要的CAD引擎一般指的就是几何内核。要在计算机上建模实体,需要一个内核。内核执行复杂的方程,生成屏幕上显示的对象的视觉表示

目前,商用CAD引擎主要包括了ACIS、HOOPS、ParaSolid等。其中使用ACIS引擎的底层产品主要包括了AutoCAD、Inventer、Catia、MicroSolid等;使用ParaSolid引擎的主要包括了UG、Solidworks、SolidEdge等。但由于关注点的差别及商业保密的因素,不同的CAD软件都有自己的一套建模方式和存储体系,这导致了系统间数据无法进行直接的传递。目前采用的方式是通过中间标准格式文件为媒介进行传递,但是这种方式会丢失一些细节特征,这就还需要进行一些其它额外的修补工作,这也一定程度上影响了CAD技术的发展。

1.2 OpenCASCADE

在商用CAD软件外,还有一些比较成熟的开源CAD引擎 ,其中使用的比较多的是OpenCascade(简称OCC)。OCC平台是由法国Matra Datavision公司开发的CAD/CAE/CAM软件平台,可以说是世界上最重要的几何造型基础软件平台之一。它是一个开放源码CAD 内核,可以定制和扩展(添加新的功能组件,类的进一步继承),面向CAD/CAM,对主流CAD 数据格式提供支持(STEP/STL/IGES 等,可自行开发转换程序提供特定数据格式的支持),提供高级建模函数(拟合,有理样条曲线,拉伸、旋转、扫出、层叠拉伸、圆角、倒角、薄壳、修剪、偏移等),参数化模型,提供几何模型的特征提取,对Visual C++/MFC 有很好的支持。

在当前国内大力自主发展技术,知识产权保护趋严的背景下,几何内核作为工业软件的一项基本底层技术,应该被拿到产业链的战略地位上来,否则永远只能在国外产品基础上开发,利润大头送给他人。

2、专栏目录

OpenCASCADE开发指南<一>:OCC库编译和环境搭建
OpenCASCADE开发指南<二>:OCC 体系结构和基本概念
OpenCASCADE开发指南<三>:OCC 基础类概述
OpenCASCADE开发指南<四>:OCC 数据类型和句柄
OpenCASCADE开发指南<五>:OCC 内存管理器和异常类
OpenCASCADE开发指南<六>:OCC 中的集合容器(Array、Map)类和迭代器
OpenCASCADE开发指南<七>:OCC 中的数学基本类型和数学算法
OpenCASCADE开发指南<八>:OCC 数据结构分析之二三维几何数据
OpenCASCADE开发指南<九>:OCC 数据结构分析之拓扑数据结构
OpenCASCADE开发指南<十>:OCC三维建模基础知识
OpenCASCADE开发指南<十一>:OCC基本三维几何体建模类BRepBuilderAPI、BRepPrimAPI介绍
OpenCASCADE开发指南<十二>:OCC创建三维瓶子模型

3、效果





相关推荐
吴_知遇1 小时前
【华为OD机试真题】428、连续字母长度 | 机试真题+思路参考+代码解析(E卷)(C++)
开发语言·c++·华为od
LaoWaiHang1 小时前
MFC案例:使用键盘按键放大、缩小窗口图像的实验
c++·mfc
到底怎么取名字不会重复1 小时前
Day10——LeetCode15&560
c++·算法·leetcode·哈希算法·散列表
陈大大陈2 小时前
基于 C++ 的用户认证系统开发:从注册登录到Redis 缓存优化
java·linux·开发语言·数据结构·c++·算法·缓存
纪元A梦2 小时前
华为OD机试真题——通过软盘拷贝文件(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
java·javascript·c++·python·华为od·go·华为od机试题
刚入坑的新人编程3 小时前
C++多态
开发语言·c++
QUST-Learn3D3 小时前
高精度并行2D圆弧拟合(C++)
开发语言·c++
明月醉窗台4 小时前
Qt 入门 6 之布局管理
c语言·开发语言·c++·qt
云小逸4 小时前
【C++】继承
开发语言·c++
努力学习的小廉4 小时前
【C++】 —— 笔试刷题day_21
开发语言·c++·算法