[email protected] 2020/11/05
Open CASCADE是由法国Matra Datavision公司开发的CAD/CAE/CAM软件平台。具有3D曲面和实体建模功能的CAD数据交换和可视化提供服务的 开源软件开发平台。OCCT主要以C++类库形式对外提供功能包,并支持c#、Tcl、java等语言扩展。同时支持跨平台软件开发部署,包括Windows (IA-32和x86-64),Linux(x86-64),OS X / macOS(x86-64),Android(armv7和x86)和iOS(armv7,arm64)平台。
OCCT主要涵盖3D建模(CAD),制造/测量(CAM)或数值模拟(CAE)领域,可以开发二维和三维几何 建模应用程序,包括通用的或专业的计算机辅助设计CAD系统、制造或分析领域的应用程序、仿真应用 程序或图形。
OCCT旨在实现真正的模块化和可扩展性,主要提供以下C++类库:
基础模块包含数据结构和服务组件所需的高层次抽象类,主要有:
此模块还提供各种通用服务,例如:
建模数据提供用于3D对象的边界表示(BRep,全称:boundary representation)的数据结构。
在BRep中,形状表示为拓扑内几何体的集合。几何形状应理解为形状的数学描述,例如曲线和曲面(简单或规范,贝塞尔曲线,NURBS等)。拓扑是将几何对象绑定在一起的数据结构。
几何类型和实用程序为以下各项提供几何数据结构和服务:
拓扑定义了简单几何实体之间的关系。形状是基本的拓扑实体,可以分为多个分量(子形状):
建模算法模块将几何建模中使用的各种拓扑和几何算法分组。基本上,Open CASCADE Technology中有两组算法:
可视化模块提供了即用型算法,可以根据各种对象(形状,网格等)创建图形表示。在Open CASCADE Technology中,
可视化基于CAD数据及其图形表示的分离。可以自定义演示文稿,以考虑到您的应用程序的特殊性。
该模块还支持快速而强大的交互式选择机制。
OCCT提供的查看工具范围从处理基本几何形状和拓扑结构的低级工具(例如具有控制点和节点的NURBS可视化,渲染等值线
以估计参数化的速度和质量,或者渲染边缘的参数化轮廓)到使用光线跟踪实时高质量渲染模型的高级工具:阴影,反射,
透明度,抗锯齿等。
这里只是几个例子:
数据交换允许开发基于OCCT的应用程序,该应用程序可以通过在外部数据之间读写CAD模型来与其他CAD系统进行交互。无论外部
数据的质量如何,还是对内部表示的要求(例如,数据类型,可接受的几何误差等),交换都可以顺利进行。
数据交换以模块化的方式组织成一组接口,这些接口符合各种CAD格式:IGES,STEP,STL,VRML等。这些接口允许基于OCCT的
软件与各种CAD/PDM软件包交换数据,从而维护良好的互操作性。
形状修复
形状修复库提供的算法可校正和调整从其他CAD系统导入OCCT的形状的几何形状和拓扑。
形状修复算法包括但不限于以下操作:
子域 | 描述 | 对形状的影响 |
---|---|---|
分析 | 探索形状属性,计算形状特征,检测是否违反OCCT要求 | 形状本身未修改 |
修复 | 固定形状以满足OCCT要求 | 形状可能会更改其原始形式:修改,移除或创建子形状等) |
升级 | 改进形状以适合某些特定算法 | 形状被替换为新形状,但是在几何形状上它们是相同的 |
定制化 | 修改形状表示以适应特定需求 | 形状不会更改,只有其内部表示形式的数学形式会更改 |
处理 | 通过用户可编辑的资源文件进行形状修改的机制 |
Open CASCADE应用程序框架(OCAF)根据应用程序/文档范式处理应用程序数据。由于以下现成的功能和服务,
它使用关联引擎来简化CAD应用程序的开发:
OCAF与其他任何CAD框架的不同之处在于应用程序数据的组织,因为那里的数据结构基于参考键而不是形状。
在模型中,诸如形状数据,颜色和材质之类的属性将附加到比形状深的不变结构上。形状对象成为Shape
属性的值,就像整数是Integer属性的值和字符串是Name属性的值一样。
OCAF将这些属性组织并嵌入到文档中。OCAF文件又由OCAF应用程序管理。
Draw是用于OCCT库的便捷测试工具。在构建整个应用程序之前,可以将其用于测试各种算法并为其原型设计。这包括:
基本命令提供通用服务,例如:
您可以添加自定义命令来测试或展示你开发的任何新功能。
OCC官网
百度百科
OpenCasCade 简介
Technical Overview