[发明专利]基于OCCT的将STEP文件转换为零件-装配体数据结构的方法在审
申请号: | 202110818577.3 | 申请日: | 2021-07-20 |
公开(公告)号: | CN113673008A | 公开(公告)日: | 2021-11-19 |
发明(设计)人: | 王念峰;杨天;张宪民;郑永忠 | 申请(专利权)人: | 华南理工大学;三技精密技术(广东)股份有限公司 |
主分类号: | G06F30/12 | 分类号: | G06F30/12;G06F111/10 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李斌 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 occt step 文件 转换 零件 装配 数据结构 方法 | ||
本发明公开了一种基于OCCT的将STEP文件转换为零件‑装配体数据结构的方法,方法包括以下步骤:S1、构建零件‑装配体数据结构和装配体文件结构;S2、利用OCCT的数据交换模块将STEP文件转换为存储模型数据的OCAF文档;S3、提取OCAF文档中的模型数据存储到零件‑装配体数据结构中;S4、将零件‑装配体数据结构存储为装配体文件。本发明方法可以还原STEP文件中的装配体层次结构,且可以通过读取装配体文件来快速重建三维模型。
技术领域
本发明属于三维模型数据交换技术领域,具体涉及一种基于OCCT的将STEP文件转换为零件-装配体数据结构的方法。
背景技术
三维模型数据交换技术使得不同的CAD系统中可以重复使用三维模型。OCCT(OpenCASCADE Technology)是一个开源的三维建模引擎,用于快速开发三维建模(CAD)、制造(CAM)或数值模拟(CAE)应用程序。在使用OCCT引擎构建三维仿真软件时,需要导入三维模型来搭建仿真场景,而STEP文件描述的三维模型通常以零件或装配体的形式存在,为了能够还原STEP文件所存储的完整三维模型数据,这就需要将STEP文件转换为零件-装配体数据结构。
目前OCCT中提供的STEP文件读取类STEPControl_Reader只能将STEP文件解析成一个单独的零件,失去了装配体结构,不利于用户与三维模型交互。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提出一种基于OCCT的将STEP文件转换为零件-装配体数据结构的方法,利用STEP文件与OCCT进行数据交换时,可以保留STEP文件中存储的装配体层次结构,便于用户与三维模型进行交互。
为了达到上述目的,本发明采用以下技术方案:
基于OCCT的将STEP文件转换为零件-装配体数据结构的方法,包括以下步骤:
S1、构建零件-装配体数据结构和装配体文件结构;
S2、利用OCCT的数据交换模块将STEP文件转换为存储模型数据的OCAF文档;
S3、提取OCAF文档中的模型数据存储到零件-装配体数据结构中;
S4、将零件-装配体数据结构存储为装配体文件。
进一步的,零件-装配体数据结构具体采用组合模式设计;
装配体文件结构具体包括装配体、零件以及子装配体,装配体包括组件数量、名称以及位姿属性,零件和子装配体都包括类型、文件名以及位姿这三个公共属性,零件还包括颜色属性。
进一步的,OCAF文档是一个树结构,存储了STEP文件的完整信息。
进一步的,提取OCAF文档中的模型数据具体包括以下步骤:
S31、利用形状工具类XCAFDoc_ShapeTool获取OCAF文档根节点,并判断该节点的形状类型;
S32、如果是零件节点,则获取节点属性并初始化零件对象,完成STEP向零件的转换工作;如果是装配体节点,则获取该节点属性并初始化装配体对象;
遍历文档根节点的所有子节点,在遍历时,如果访问到零件节点,则初始化零件对象并加入到父装配体中,如果遇到装配体节点,则初始化子装配体对象并加入到父装配体中,再进行递归;
遍历和递归过程都结束后,OCAF文档中的数据结构转换为零件-装配体数据结构。
进一步的,形状工具类XCAFDoc_ShapeTool用于提取OCAF文档树节点的形状类型、名称以及位姿属性;
步骤S3中还包括采用颜色工具类XCAFDoc_ColorTool提取附加在形状上的颜色属性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学;三技精密技术(广东)股份有限公司,未经华南理工大学;三技精密技术(广东)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110818577.3/2.html,转载请声明来源钻瓜专利网。