OCC系列-OCC介绍及框架分析

1.OCC介绍

Open CASCADE (简称OCC)是一开源的几何造型引擎,OCCT库是由Open CASCADE公司开发和市场运作的。它是为开源社区比较成熟的基于BREP结构的建模引擎,能够满足二维三维实体造型和曲面造型,国内研究和使用它的单位也越来越多。基于该建模引擎发展了若干CAD/CAE/CAM软件,如国外的FreeCAD、HeeksCAD,国内的AnyCAD。OCC可以分为建模、可视化和数据管理(OCAF)三大模块。其中建模为核心组件;可视化组件基于OpenGL库被设计。设计成模块化和易扩展。将C++类与以下内容分离:

  • 定义数据结构(几何建模、显示和交互选择);
  • 实现复杂算法;
  • 提供编程接口;

优势:

  • 开源、免费,所以开发成本较低。
  • 支持跨平台
  • 支持STEP\IGES\STL等文件格式
  • 有个OCAF框架,简化开发。

不足:

  • 部分算法效率低下,例如布尔运算。
  • 显示效果很差,只用到了OpenGL1.2的API。相对其他的三维可视化OpenGL平台(如Coin4d,OpenInventor, Ogre,OSG,Blender,VTK等),功能简单,并且显示效果比较差,不能充分利用GPU硬件加速,,跟HOOPS没得比。
  • OCAF采用树的方式管理数据,使用比较复杂,效率比较低,并且不适合自定义扩展。

因此,不推荐使用OCC的可视化和数据管理组件.

1.1 技术架构:

1.2 OCAF框架

1.3 模块介绍:

OCCT库分组成六个模块,最小的模块Foundation Classes包含两个库,最大的模块Modeling Algorithms,包含八个库。(可能是早期版本,最新版本的库的数量有变化。)

这些模块如下图所示:

Foundation Classes基础类

Modeling Data

建模数据

Modeling Algorithms

建模算法

Visualization

可视化

Data Exchange

数据交换

Application Framework

程序框架

Kernel Classes

核心类

2D Geometry

二维几何体

Primitives

基本实体

2D和3D通用功能

IGES

STEP

Data Framework

Math Utilities

数学工具

3D Geometry

三维几何体

Boolean Operations

布尔操作

2D Visualization

2D 可视化

AP203

AP214

Data Storage

Geometry Utilities

几何工具

Fillets and Chamfers

倒圆和倒角

3D Visualization

3D 可视化

Extended data Exchange

(XDE)

Application Desktop

Topology

拓朴结构

Offsets, Drafts, Sewing,

Sweeps,

Hidden Line Removal

消隐

Geometric Tools

几何工具

Topological Tools

拓朴工具

1.4 OCCT已有功能

(1)模型几何建模引擎
(2)显示渲染引擎
(3)基本交互:
  • 背景网格
  • ViewCube视图向导
  • 拾取选择
  • 基本对象的拾取选择-选择点,线,面,体等
(4)模型持久化框架
  • 文件保存
  • 文件打开
  • 基于TK_Model,TDF_Label,TDF_Attribute的树状对象模型

      (5)支持事务框架

  •  Redo/Undo
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值