OCCT库简介

简介: OCCT库简介 Overview of OCCT Library eryar@163.com Open CASCADE Technology 是为特定领域快速开发程序而设计面向对象的C++类库。可以使用OCCT来开发二维和三维的通用几何造型CAD(Computer Aided Design)程序,CAM(Computer Aided Manufacturing)系统和CAA(Computer Aided Analysis)程序;仿真程序和绘图程序。

OCCT库简介

Overview of OCCT Library

eryar@163.com

Open CASCADE Technology 是为特定领域快速开发程序而设计面向对象的C++类库。可以使用OCCT来开发二维和三维的通用几何造型CAD(Computer Aided Design)程序,CAM(Computer Aided Manufacturing)系统和CAA(Computer Aided Analysis)程序;仿真程序和绘图程序。OCCT库可以让程序开发变得明显快速。

OCCT库提供如下功能:

l 2D和3D几何造型工具箱,可对任何物体造型;

n 创建基本图元,如prism,cylinder, cone, torus;

n 对实体进行布尔操作,addition, subtraction and intersection;

n 根据倒圆、倒角、草图拉伸出几何实体;

n 使用偏移offsets、成壳shelling、挖空hollowing和挤压sweeps构造几何实体;

n 计算几何实体属性,如表面积、体积、重心、曲率半径;

n 使用插值interpolation、逼近approximation、投影projection计算出几何体;

l 可视化功能提供对几何实体的显示、控制功能,例如:

n 三维旋转3D rotation;

n 缩放Zoom;

n 着色Shading;

l 程序框架提供如下功能:

n 将非几何数据与几何实体关联;

n 参数化模型;

n Java Application Desktop(JAD);

OCCT库是由Open CASCADE公司开发和市场运作的。库被设计成模块化和易扩展。将C++类与以下内容分离:

l 定义数据结构(几何建模、显示和交互选择);

l 实现复杂算法;

l 提供编程接口;

相关的类由包来分组,避免了类名的冲突。C++类名前加上包名作为前缀。如包Geom中所有的3D几何体,实现Bezier曲面的类为BezierSurface,其全称为Geom_BezierSurface。

包组成库,即提供给程序链接使用。

最的,库分组成六个模块,最小的模块Foundation Classes包含两个库,最大的模块Modeling Algorithms,包含八个库。(eryar: 可能是早期版本,最新版本的库的数量有变化。)这些模块如下图所示:

图1:Object Libraries modules and their contents

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

拓朴工具

     

另外,Draw Test Harness(Draw)为可视化、建模算法、程序框架和数据交换模块提供测试。

 

eryar

Shanghai Pudongxin China

2012-8-16

目录
相关文章
|
7月前
|
API 开发工具 数据库
框架和库:你需要知道的一切
框架和库:你需要知道的一切
88 0
|
7月前
|
数据采集 数据挖掘 Python
|
5月前
|
消息中间件 JSON 数据安全/隐私保护
`kombu`模块简介
`kombu`模块简介
|
7月前
|
数据采集 网络协议 API
python中其他网络相关的模块和库简介
【4月更文挑战第4天】Python网络编程有多个流行模块和库,如requests提供简洁的HTTP客户端API,支持多种HTTP方法和自动处理复杂功能;Scrapy是高效的网络爬虫框架,适用于数据挖掘和自动化测试;aiohttp基于asyncio的异步HTTP库,用于构建高性能Web应用;Twisted是事件驱动的网络引擎,支持多种协议和异步编程;Flask和Django分别是轻量级和全栈Web框架,方便构建不同规模的Web应用。这些工具使网络编程更简单和高效。
|
7月前
|
Web App开发 API C#
PuppeteerSharp库在C#中的应用案例
PuppeteerSharp库在C#中的应用案例
|
数据采集 搜索推荐 中间件
【 ⑬】Scrapy库概述(简介、安装与基本使用)
【 ⑬】Scrapy库概述(简介、安装与基本使用)
178 0
|
JavaScript 前端开发 API
什么是框架和库?
什么是框架和库?
127 0
|
测试技术 Python
HTMLReport使用1 | HTMLReport简介和安装
HTMLReport使用1 | HTMLReport简介和安装
194 0
HTMLReport使用1 | HTMLReport简介和安装
优秀开源项目推荐之--文档库bookstack
优秀开源项目推荐之--文档库bookstack
|
Linux PHP
Chevereto——简介及安装
一款强大好用的图床程序-Chevereto
670 0
Chevereto——简介及安装