问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Open CASCADE模块组成

创作时间:
作者:
@小白创作中心

Open CASCADE模块组成

引用
CSDN
1.
https://blog.csdn.net/weixin_44733606/article/details/145509058

Open CASCADE是一个开源的3D几何建模和处理库,广泛应用于CAD/CAM/CAE等领域。本文将详细介绍Open CASCADE的模块组成,帮助读者更好地理解和使用这个强大的工具。

一、分类

1、FoundationClasses:基础类

(1)、TKMath
  • BSplCLib:B 样条曲线库:提供创建、操作和求值 B 样条曲线的类和函数。
  • BSplSLib:B 样条曲面库:提供创建、操作和求值 B 样条曲面的类和函数。
  • BVH:边界体积层次结构(Bounding Volume Hierarchy):用于加速碰撞检测和射线追踪等几何查询的层次结构。
  • Bnd:边界:表示和处理几何体的边界框的模块。
  • CSLib:圆弧和直线库:提供用于处理圆弧和直线的类和函数。
  • Convert:几何对象转换库:提供将几何对象从一种表示形式转换为另一种表示形式的类和函数。
  • ElCLib:椭圆曲线库:提供创建、操作和求值椭圆曲线的类和函数。
  • ElSLib:椭圆曲面库:提供创建、操作和求值椭圆曲面的类和函数。
  • Expr:表达式库:提供用于解析和求值数学表达式的类和函数。
  • ExprIntrp:表达式插值库:提供用于对数学表达式进行插值的类和函数。
  • GeomAbs:几何抽象库:定义用于描述几何对象的抽象属性的枚举和类,例如连续性、曲率等。
  • PLib:参数化线库:提供用于处理参数化线的类和函数。
  • Poly:多边形库:提供用于处理多边形的类和函数。
  • Precision:精度库:定义用于比较浮点数的精度参数,例如绝对误差和相对误差。
  • TColgp:几何对象集合库:提供用于存储和管理几何对象的集合类,例如点、向量等。
  • TopLoc:拓扑定位库:提供用于定义坐标转换和局部坐标系的类和函数,允许在不同的坐标系之间转换几何对象。
  • gp:几何原语库:定义基本的几何图元类型,例如点、向量、轴、平面、转换等。这些类型是所有其他几何对象的基础。
  • math:数学算法库:提供各种数值算法,例如线性方程组求解、优化、插值等。
(2)、TKernel
  • FSD:文件系统依赖库:提供用于访问文件系统的类和函数,允许以独立于平台的方式读取和写入文件。
  • Message:消息传递库:提供用于记录和报告信息、警告和错误的类和函数。
  • NCollection:非模板集合库:提供非模板的集合类,例如列表、数组、哈希表等,用于存储和管理数据。
  • OSD:操作系统依赖库:提供操作系统相关的函数,例如线程管理、进程管理等,允许编写跨平台的应用程序。
  • Plugin:插件库:提供用于动态加载和卸载插件的类和函数,允许扩展 OCCT 的功能。
  • Quantity:物理量库:定义物理量及其单位,例如长度、质量、时间等。
  • Resource:资源管理库:提供用于加载和存储配置数据、文本字符串等资源的类和函数。
  • Standard:标准库:定义常用的数据类型、宏和函数,是所有其他模块的基础。包括异常处理、内存管理、Handle 机制 (用于对象管理)等。
  • StdFail:标准失败库:定义标准的错误代码和异常类型。
  • Storage:存储库:提供用于将 OCCT 对象存储到磁盘的类和函数,支持不同的存储格式。
  • TColStd:模板集合库:提供模板的集合类,例如列表、数组、哈希表等,用于存储和管理数据。
  • TCollection:通用集合库:提供更通用的集合类,例如列表、数组、哈希表等,用于存储和管理数据。
  • TShort:短字符串库:提供用于处理短字符串的类和函数。
  • Units:单位库:定义常用的物理单位,例如米、千克、秒等。
  • UnitsAPI:单位 API 库:提供用于操作单位的 API。
  • UnitsMethods:单位方法库:提供用于执行单位转换的方法。

2、ModelingData:模型数据

  • TKBRep:边界表示:定义了拓扑数据结构 (TopoDS) 和 B-rep 模型的表示方法。包括顶点 (Vertex)、边 (Edge)、面 (Face)、壳 (Shell)、实体 (Solid) 等拓扑元素的定义,以及如何将几何信息与拓扑信息关联起来。
  • TKG2d:2D几何:定义了二维几何实体及其相关的算法。包括点、线、圆弧、贝塞尔曲线等。
  • TKG3d:3D几何:定义了三维几何实体及其相关的算法。包括点、线、平面、圆柱、球体、圆锥、贝塞尔曲线和曲面、B样条曲线和曲面等。
  • TKGeomBase:几何基础:提供几何对象的基类,例如曲线和曲面。

3、ModelingAlgorihtms:模型算法

  • TKBO:布尔运算: 提供布尔运算算法(Boolean Operations),例如交集、并集、差集。
  • TKBool:布尔: 也是提供布尔运算算法,可能与 TKBO 在算法实现上有所不同,或者提供更高级别的布尔运算接口。
  • TKFeat:特征:提供特征建模算法,例如孔、凸台、槽等特征的创建和修改。
  • TKFillet:圆角:提供倒角和圆角算法。
  • TKGeomAlgo:几何算法:提供几何算法,例如曲线和曲面的求交、投影等。
  • TKHLR:隐藏线消除:提供隐藏线消除(Hidden Line Removal)算法。
  • TKMesh:网格:提供网格划分算法,将几何模型转换为网格。
  • TKXMesh:扩展的网格:提供扩展的网格划分算法,可能包含更高级的网格控制和优化功能。
  • TKOffset:偏移:提供偏移算法,用于创建几何对象的偏移副本。
  • TKPrim:基元:提供基本几何体的创建算法,例如立方体、圆柱体、球体等。
  • TKShHealing:形状修复:提供形状修复算法,用于修复几何模型中的缺陷。
  • TKTopAlgo:拓扑算法:提供拓扑算法,用于处理拓扑结构,例如查找相邻面、边等。

4、ApplicationFramework:程序框架

  • TKBin:二进制:提供二进制格式的持久化支持,用于将 OCCT 对象存储到二进制文件。
  • TKBinL:二进制轻量:提供二进制格式的持久化支持,用于将 OCCT 对象存储到二进制文件,轻量级和快速,通常使用更简单的数据结构和算法,从而减少了存储和加载的开销。
  • TKBinTObj:二进制事务对象:提供二进制格式的持久化支持,用于将 OCCT 对象存储到二进制文件,并支持事务对象 (Transactional Objects)。
  • TKCAF:组件应用程序框架:提供组件应用程序框架(Component Application Framework),用于管理和组织 CAD 模型中的组件。
  • TKCDF:复合文档框架:提供复合文档框架(Compound Document Framework),用于管理和组织多个文档。
  • TKLCAF:本地组件应用程序框架:提供本地组件应用程序框架(Local Component Application Framework),用于在本地管理和组织 CAD 模型中的组件。
  • TKStd:标准文档:提供标准文档类,用于表示 CAD 模型。
  • TKStdL:标准文档轻量:提供标准文档类,用于表示 CAD 模型,可能与 TKStd 在实现上有所不同。
  • TKTObj:事务对象:提供事务对象(Transactional Objects)的支持。
  • TKVCAF:可视化组件应用程序框架:提供可视化组件应用程序框架(Visual Component Application Framework),用于在可视化环境中管理和组织 CAD 模型中的组件。
  • TKXml:Xml:提供 XML 格式的持久化支持,用于将 OCCT 对象存储到 XML 文件。
  • TKXmlL:Xml轻量:提供 XML 格式的持久化支持,用于将 OCCT 对象存储到 XML 文件。
  • TKXmlTObj:Xml事务对象:提供 XML 格式的持久化支持,用于将 OCCT 对象存储到 XML 文件,并支持事务对象 (Transactional Objects)。

5、DataExchange:数据交换

  • TKBinXCAF:提供二进制格式的持久化支持,用于存储和加载 XCAF 数据。
  • TKExpress:提供 EXPRESS 数据模型的支持,EXPRESS 是一种用于描述 CAD 数据的标准语言。
  • TKIGES:提供读取和写入 IGES 文件的功能。
  • TKRWMesh:提供读取和写入网格文件的功能。
  • TKSTEP:提供读取和写入 STEP 文件的功能。
  • TKSTEP209:提供读取和写入 STEP AP209 文件的功能,AP209 是一种特定的 STEP 应用协议。
  • TKSTEPAttr:提供 STEP 属性处理功能。
  • TKSTEPBase:提供 STEP 基础功能。
  • TKSTL:提供读取和写入 STL 文件的功能。
  • TKVRML:提供读取和写入 VRML 文件的功能。
  • TKXCAF:提供 XCAF 数据的支持,XCAF 是一种用于描述 CAD 模型中组件的 OCCT 扩展格式。
  • TKXDE:提供扩展数据元素 (Extended Data Elements) 的支持,用于存储和管理附加信息。
  • TKXDECascade:提供与 OCCT 数据结构的集成,用于在 XDE 中使用 OCCT 对象。
  • TKXDEIGES:提供与 IGES 数据的集成,用于在 XDE 中处理 IGES 文件。
  • TKXDESTEP:提供与 STEP 数据的集成,用于在 XDE 中处理 STEP 文件。
  • TKXSBase:提供 XDE 基础功能。
  • TKXmlXCAF:提供 XML 格式的持久化支持,用于存储和加载 XCAF 数据。

6、Draw:画图

  • TKD3DHostTest:Direct3D 集成的测试工具。
  • TKDCAF:对 CAF 框架进行测试
  • TKDraw:提供基于文本命令的交互式绘图工具,用于显示和操作 OCCT 对象。
  • TKIVtkDraw:集成 VTK 的绘图测试工具。
  • TKOpenGlTest:OpenGL 集成的测试工具。
  • TKOpenGlesTest:OpenGLES 集成的测试工具。
  • TKQADraw:提供基于 Qt 框架的交互式绘图工具。
  • TKTObjDRAW:提供事务对象 (Transactional Objects) 的绘图工具。
  • TKTopTest:提供拓扑数据结构的测试工具。
  • TKViewerTest:提供可视化功能的测试工具。
  • TKXDEDRAW:提供 XDE 数据的绘图工具。
  • TKXSDRAW:提供 XDE 基础数据的绘图工具。

7、Visualization:可视化

  • TKD3DHost:提供与 Direct3D 图形 API 的集成。
  • TKIVtk:提供与 Visualization Toolkit (VTK) 的集成。
  • TKMeshVS:提供网格可视化服务,用于显示和操作网格。
  • TKOpenGl:提供与 OpenGL 图形 API 的集成。
  • TKOpenGles:提供与 OpenGLES 图形 API 的集成,用于嵌入式设备
  • TKService:提供可视化服务,例如选择、高亮显示、缩放等交互功能。
  • TKV3d:定义 3D 可视化环境,包括相机、光照、渲染器等。

二、调用结构

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号