Overview of OpenCascade Library
Overview of OpenCascade Library
摘要Abstract:对OpenCascade库的功能及其实现做简要介绍。
关键字Key Words:OpenCascade、occ、Modeling Kernel、CAD
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 提供编程接口;

图1. OpenCascade架构图
相关的类由包来分组,避免了类名的冲突。C++类名前加上包名作为前缀。如包Geom中所有的3D几何体,实现Bezier曲面的类为BezierSurface,其全称为Geom_BezierSurface。
包组成库,即提供给程序链接使用。
最的,库分组成六个模块,最小的模块Foundation Classes包含两个库,最大的模块Modeling Algorithms,包含八个库。(eryar: 可能是早期版本,最新版本的库的数量有变化。)这些模块如下图所示:
图2: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
Overview of OpenCascade Library的更多相关文章
- OpenCascade简介
OpenCascade简介 Overview of OpenCascade Library eryar@163.com 摘要Abstract:对OpenCascade库的功能及其实现做简要介绍. ...
- OpenCascade B-Spline Basis Function
OpenCascade B-Spline Basis Function eryar@163.com Abstract. B-splines are quite a bit more flexible ...
- Mesh Data Structure in OpenCascade
Mesh Data Structure in OpenCascade eryar@163.com 摘要Abstract:本文对网格数据结构作简要介绍,并结合使用OpenCascade中的数据结构,将网 ...
- Hello World of OpenCascade
Hello World of OpenCascade eryar@163.com 摘要Abstract:以一个经典的Hello World程序为例开始对开源几何造型内核OpenCascade的学习. ...
- Topology Shapes of OpenCascade BRep
Topology Shapes of OpenCascade BRep eryar@163.com 摘要Abstract:通过对OpenCascade中的BRep数据的读写,理解边界表示法的概念及实现 ...
- Render OpenCascade Geometry Curves in OpenSceneGraph
在OpenSceneGraph中绘制OpenCascade的曲线 Render OpenCascade Geometry Curves in OpenSceneGraph eryar@163.com ...
- OpenCascade Shape Representation in OpenSceneGraph
OpenCascade Shape Representation in OpenSceneGraph eryar@163.com 摘要Abstract:本文通过程序实例,将OpenCascade中的拓 ...
- Geometry Surface of OpenCascade BRep
Geometry Surface of OpenCascade BRep eryar@163.com 摘要Abstract:几何曲面是参数表示的曲面 ,在边界表示中其数据存在于BRep_TFace中, ...
- Geometry Curve of OpenCascade BRep
Geometry Curve of OpenCascade BRep eryar@163.com 摘要Abstract:几何曲线是参数表示的曲线 ,在边界表示中其数据存在于BRep_TEdge中,BR ...
随机推荐
- 使用js-xlsx库,前端读取Excel报表文件
在实际开发中,经常会遇到导入Excel文件的需求,有的产品人想法更多,想要在前端直接判断文件内容格式是否正确,必填项是否已填写 依据HTML5的FileReader,可以使用新的API打开本地文件(参 ...
- mac 关于使用protobuf出现ld: symbol(s) not found for architecture x86_64的问题
主要是编译时没有添加protobuf库文件 g++ -o Writer.o lm.helloworld.pb.cc Writer.cpp -L/usr/local/lib -lprotobuf
- ACM: Gym 101047B Renzo and the palindromic decoration - 手速题
Gym 101047B Renzo and the palindromic decoration Time Limit:2000MS Memory Limit:65536KB 64 ...
- SPOJ FASTFLOW网络流水题
Dinic=bfs+dfs = = 用bfs算出到原点的最短路径(每条残存都算1) 然后每次都跑两端只差1的路径跑dfs,并且一直跑到不能跑 一个优化:如果一个点流出的量已经到流入量了就可以返回上一 ...
- 【异常】INFO: TopologyManager: EndpointListener changed ...
5月份做云部署,在调试CSS系统时,出现启动系统时,卡死情况,后台日志如下: May 03, 2016 2:34:52 AM org.apache.cxf.dosgi.topologymanager. ...
- Windows中断那些事儿
搞内核研究的经常对中断这个概念肯定不陌生,经常我们会接触很多与中断相关的术语,按照软件和硬件进行分类: 硬件CPU相关: IRQ.IDT.cli&sti 软件操作系统相关: APC.DPC.I ...
- MAC帧和IP包的分析
ping了12次岭南师范学院官网后退出 抓到的包如下 各个名词解释
- UVA103 dp基础题,DAG模型
1.UVA103 嵌套n维空间 DAG模型记忆化搜索,或者 最长上升子序列. 2.dp[i]=max( dp[j]+1),(第i个小于第j个) (1) //DAG模型记忆化搜索 #include< ...
- springmvc上传文件,抄别人的
SpringMVC中的文件上传 分类: SpringMVC 2012-05-17 12:55 26426人阅读 评论(13) 收藏 举报 stringuserinputclassencoding 这是 ...
- STM32之ADC+步骤小技巧(英文)
神通广大的各位互联网的网友们.大家早上中午晚上好好好.今早起来很准时的收到了两条10086的扣月租的信息.心痛不已.怀着这心情.又开始了STM32的研究.早上做了计算机控制的PID实验,又让我想起了飞 ...