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、效果





相关推荐
‘’林花谢了春红‘’4 小时前
C++ list (链表)容器
c++·链表·list
机器视觉知识推荐、就业指导5 小时前
C++设计模式:建造者模式(Builder) 房屋建造案例
c++
Yang.997 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3
熬夜学编程的小王7 小时前
【初阶数据结构篇】双向链表的实现(赋源码)
数据结构·c++·链表·双向链表
zz40_7 小时前
C++自己写类 和 运算符重载函数
c++
六月的翅膀8 小时前
C++:实例访问静态成员函数和类访问静态成员函数有什么区别
开发语言·c++
liujjjiyun8 小时前
小R的随机播放顺序
数据结构·c++·算法
¥ 多多¥8 小时前
c++中mystring运算符重载
开发语言·c++·算法
天若有情6739 小时前
c++框架设计展示---提高开发效率!
java·c++·算法