彩票走势图

3D模型格式转换引擎HOOPS Exchange如何获取模型几何数据?

原创|行业资讯|编辑:吴秋红|2024-01-15 10:22:38.593|阅读 6 次

概述:前面讲解过模型在内存中的结构,现在回顾一下,当模型导入成功后,整个模型数据会以原生结构的 PRC 组装树形式存放到内存中。下面从文件的指针入手,简单说一下如何获取到模型的几何数据。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

一、概述
前面讲解过模型在内存中的结构,现在回顾一下,当模型导入成功后,整个模型数据会以原生结构的 PRC 组装树形式存放到内存中。
PRC结构的主要类型包含四种,分别是模型文件(Model file)、产品结构节点(Product Occurrence)、零件定义(Part definitions)和表示项(Representation items),其具体结构图如下:


下面我们根据这个脉络,从文件的指针入手,简单说一下如何获取到模型的几何数据。


二、遍历模型

1、模型入口
我们在导入模型后,会获取到导入模型的文件指针(A3DAsmModelFile* m_psModelFile),它是我们遍历模型所有数据的入口。
2、解析产品结构节点(Product Occurrence)
    接下来我们根据文件指针m_psModelFile查找其对应的A3DAsmModelFileData数据,在A3DAsmModelFileData数据中可以获取到“产品结构节点(Product Occurrence)”的数量和子节点集合。
    之后判断子节点的类型,如果子节点也是“产品结构节点”类型,则进行递归,查找子节点下面的子节点,这样不断递归,就可以将模型中所有的“产品结构节点”找出。
    如果子节点的类型是“零件定义(Part definitions)”类型,则就进行下面的解析“零件定义(Part definitions)”节点的操作。
3、解析零件定义(Part definitions)
    在获取到“零件定义(Part definitions)”节点后,我们可以获取到“零件定义(Part definitions)”节点对应的“零件定义数据”,通过“零件定义数据”就可以获取到该节点对应的“表示项(Representation items)”的数量和集合。
    这一级节点的解析比较简单,没有递归。
4、解析表示项(Representation items)
    在获取到“表示项(Representation items)”节点后,我们就可以获取该节点封装的细分数据和 B-rep数据。
    其中细分数据一定会有,即便源模型中没有,HOOPS Exchange也会生成;B-rep数据可能会有,因为有的源模型格式并不支持B-rep数据。
    下面分别介绍这两种数据。


三、细分曲面数据(Tessellation)

    细分曲面数据可以理解成我们肉眼所见的网格数据。我们可以获取到表示项中默认的细分曲面数据,但对于许多应用程序,获得默认曲面细分是不够的,因此可以设置细分曲面数据中的参数,根据这些参数重新生成符合要求的细分曲面数据。
    A3DRWParamsTessellationData可以影响细分曲面数据的生成,其参数如下:
  • TessellationLevelOfDetail - 由其它A3DRWParamsTessellationData预设值组成的高级设置。如果选择UserDefined,我们可以自定义自己的一组值。
  • AccurateTessellation - 将此值设置为true将生成更适合分析的细分。可用于所有细分级别。
  • AccurateTessellationWithGrid - 一种精确的曲面细分模式,其中在网格布局中插入点。
  • ChordHeightRatio - 指定边界框的对角线长度与弦高的比率。
  • AngleToleranceDeg - 指定边的两个连续段之间的角度。
  • MaxChordHeight(和UseHeightInsteadOfRatio) - 指定曲面和生成的细分之间的最大距离。
  • KeepUV - 将参数点保留为纹理点。
  • AccurateSurfaceCurvatures. 曲面细分倾向于沿曲率创建更适合的三角形。

TessellationLevelOfDetail 和AccurateTessellation 设置的效果如下:



AccurateTessellationWithGrid 的设置效果如下:


标准精确细分



通过插入网格对齐点进行精确细分


AccurateTessellationWithGridMaximumStitchLength、AccurateSurfaceCurvatures设置效果如下:
四、B-rep 数据(B-rep Data)
B-rep 数据是用数学来描述模型的数据,它是几何造型中最成熟、无二义的表示数据。
以下实体包含表示 B-rep 数据的几何数据:
  • Face:一个曲面和一组Loop。
  • Shell:Face实体的集合。
  • Connex:Shell实体的集合。
  • Topology B-rep 数据:拓扑边界表示法,由边界框和对多个Connex实体的引用组成。
以下为HOOPS Exchange B-rep 的拓扑结构图:


关于HOOPS可视化

Tech Soft 3D的旗舰图形引擎已为20多年来成功合作的程序提供最先进的图形支持,这些软件包括来自Oracle,SOLIDWORKS,Trimble,Hexagon,ANSYS,3D Systems,Mitutoyo,Actify等。全球各地的公司都依赖HOOPS Visualize在平台,设备和图形卡之间实现极高的性能,和一致的稳定性。有兴趣探索HOOPS Visualize API功能的开发人员可以

关于Tech Soft 3D

Tech Soft 3D是全球领先的开发工具提供商,可帮助软件团队交付成功的应用程序。Tech Soft 3D成立于1996年,总部位于俄勒冈州本德市,并在加利福尼亚州,法国,英国和日本设有办事处。该公司的工具包产品为全球数亿台计算机上运行的近500个独特应用程序提供支持。

               

慧都科技是Tech Soft 3D-HOOPS在中国区的唯一增值服务商,负责试用,咨询,销售,技术支持,售后,旨在为企业提供一站式的3D开发解决方案。如果您的企业目前也有的需求,欢迎咨询在线客服申请3D 轻量化引擎的60天免费试用。

↓↓扫码添加客服微信,及时获取“HOOPS技术”支持↓↓


经过10余年的经验沉淀,慧都3D研发团队推出了一系列的工业3D解决方案,包括BIM解决方案、PDM解决方案、CAE解决方案、机器人运动仿真解决方案、协同设计解决方案、3D打印解决方案,详情请点击此处了解

如果您的企业目前也有的需求,欢迎访问慧都网咨询在线客服或直接拨打023-68661681,我们将免费为您定制3D解决方案并发送相关案例资料!


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP