Posted on 2012-08-16 22:43
eryar 閱讀(7849)
評論(2) 編輯 收藏 引用 所屬分類:
2.OpenCASCADE
OCCT庫簡介
Overview of OCCT Library
eryar@163.com
Open CASCADE Technology 是為特定領域快速開發程序而設計面向對象的C++類庫??梢允褂?b>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