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 可视化环境,包括相机、光照、渲染器等。
二、调用结构
热门推荐
反差感走红:从影视到社交的多元应用
王者荣耀衍生词“欧金金”走红:表达幸运与喜悦的新方式
为什么“反差”这么火?从影视到生活,解码流行密码
反差感为何走红?解密流行文化中的对比美学
网络流行语引发争议,专家:语言发展需要包容心态
小孩发烧时家长应如何正确应对与护理的指南
小孩发烧手脚冰凉是属于什么发烧?要散热还是保暖
儿童发烧怎么办?香港医院药剂师学会专业解答
高中生选科指南:兴趣特长为基础,文理优势要了解
不同场合男士香水怎么选?这份实用指南请收好
肝癌一发现就是晚期?提醒:肝不好的人,上厕所或有3种反常现象
肝癌消肿利尿中药怎么样?能改善吗
《春》:在哀悼与希望中寻找生命的意义
张晓风《春之怀古》:优美文字中的生命感悟
李白杜甫白居易笔下的春天:三种不同的诗歌写作视角
舞蹈诗剧《杨家岭的春天》:延安版画与舞蹈艺术的创新融合
春天现代诗大赛征稿,一等奖奖金10000元
施耐庵如何打造《水浒传》里的超级英雄?
施耐庵与《水浒传》的明代传奇
春节祭祖最佳时间:2月4日起可提前上坟
流感、手足口病等春季传染病来袭,十大预防措施保健康
武汉东湖樱园赏樱攻略:空中栈道、夜樱灯光秀玩转春日
ChatGPT引领科技股涨势,科创板成资金追捧焦点
脖子上的小疙瘩:皮赘、脂溢性角化和丝状疣的识别与治疗
奶酪控必收藏干货!16种超市常见奶酪特点及吃法
根据奶酪商的说法,最好的奶酪适合你的节日聚会
《水浒传》诗词:艺术魅力与历史内涵的完美融合
丽江古城、玉龙雪山、西双版纳热带植物园,三大必打卡景点推荐
冬日丽江西双版纳避寒游:一路向南,温暖相伴
杭州武松墓揭秘:施耐庵笔下武松的真实原型