3D模型格式转换工具HOOPS Exchange:模型的几何数据获取!

news2024/11/25 7:14:50

3D CAD数据在制造、工程和设计等各个领域都扮演着重要的角色。为了促进不同软件应用程序之间的协作和互操作性,它通常以不同的格式进行交换。HOOPS Exchange是一个强大的软件开发工具包,提供了处理和将3D CAD数据从一种格式转换为另一种格式的解决方案。

HOOPS Exchange允许开发团队轻松构建,通过单一接口将CAD数据转换为30多种文件格式的应用程序,支持的格式包括Catia、SolidWorks、CREO、AutoDesk inventor、STEP、SIEMENS NX等,还支持访问广泛的数据,包括以其原生形式的B-REP、视觉、语义PMI、可视化视图和构造几何等等。这些都不用依赖任何CAD系统,可以让您的用户随时随地访问它们的数据。

HOOPS中文网慧都科技是HOOPS全套产品中国地区指定授权经销商,提供3D软件开发工具HOOPS售卖、试用、中文试用指导服务、中文技术支持。icon-default.png?t=N7T8http://techsoft3d.evget.com/今天本文将详细介绍的是:3D模型格式转换工具HOOPS Exchange是如何获取模型的几何数据的。

1、概述

前面讲解过模型在内存中的结构,现在回顾一下,当模型导入成功后,整个模型数据会以原生结构的 PRC 组装树形式存放到内存中。

PRC结构的主要类型包含四种,分别是模型文件(Model file)、产品结构节点(Product Occurrence)、零件定义(Part definitions)和表示项(Representation items),其具体结构图如下:

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

2、遍历模型

2.1 模型入口

我们在导入模型后,会获取到导入模型的文件指针(A3DAsmModelFile* m_psModelFile),它是我们遍历模型所有数据的入口。

2.2 解析产品结构节点(Product Occurrence)

接下来我们根据文件指针m_psModelFile查找其对应的A3DAsmModelFileData数据,在A3DAsmModelFileData数据中可以获取到“产品结构节点(Product Occurrence)”的数量和子节点集合。

之后判断子节点的类型,如果子节点也是“产品结构节点”类型,则进行递归,查找子节点下面的子节点,这样不断递归,就可以将模型中所有的“产品结构节点”找出。

如果子节点的类型是“零件定义(Part definitions)”类型,则就进行下面的解析“零件定义(Part definitions)”节点的操作。

2.3 解析零件定义(Part definitions)

在获取到“零件定义(Part definitions)”节点后,我们可以获取到“零件定义(Part definitions)”节点对应的“零件定义数据”,通过“零件定义数据”就可以获取到该节点对应的“表示项(Representation items)”的数量和集合。

这一级节点的解析比较简单,没有递归。

2.4 解析表示项(Representation items)

在获取到“表示项(Representation items)”节点后,我们就可以获取该节点封装的细分数据和B-rep数据。

其中细分数据一定会有,即便源模型中没有,HOOPS Exchange也会生成;B-rep数据可能会有,因为有的源模型格式并不支持B-rep数据。

下面分别介绍这两种数据。

3、细分曲面数据(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试用icon-default.png?t=N7T8http://x7pfmmn259623uby.mikecrm.com/l9292M9

如果您的企业目前也有3D数据格式转换、3D Web轻量化渲染的需求,欢迎留言哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1167676.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

京东商品评论API接口(评论内容|日期|买家昵称|追评内容|评论图片|评论视频..)

京东商品评论API接口是京东开放平台提供的一套API接口,用于获取京东商城商品评论数据。通过该接口,您可以获取到商品评论的详细信息,包括评论内容、评论时间、评论者信息等。 要使用京东商品评论API接口,您需要完成以下步骤&…

C# RFB 人脸识别

C# RFB 人脸识别-CSDN博客 效果 项目 下载 源码下载

uniapp新建的vuecli项目启动报错并且打包失败的问题(已解决)

我的项目新建流程如下 运行之后就是如下报错 解决办法: 安装如下依赖: npm i postcss-loader autoprefixer8.0.0 npm run build 编译失败 安装如下依赖: npm install postcss8.2.2 最终package.json文件如下 {"name": "ls…

Antv/G2 图表坐标轴文字过长时添加省略号

// 格式化文字&#xff0c;超过长度添加省略号chart.axis(city, {label: {formatter: (text) > {// 字符太长添加省略号return text.length > 5 ? ${text.slice(0, 5)}... : text;}}})完整 demo&#xff1a; <!DOCTYPE html> <html lang"en"> &l…

Jetpack Compose 中下拉框实现

下拉菜单主要 以下三种实现&#xff1a; ExperimentalMaterialApi Composable fun ExposedDropdownMenuBox(expanded: Boolean,onExpandedChange: (Boolean) -> Unit,modifier: Modifier Modifier,content: Composable ExposedDropdownMenuBoxScope.() -> Unit )实现代…

云智慧联合北航提出智能运维(AIOps)大语言模型及评测基准

随着各行业数字化转型需求的不断提高&#xff0c;人工智能、云计算、大数据等新技术的应用已不仅仅是一个趋势。各行业企业和组织纷纷投入大量资源&#xff0c;以满足日益挑剔的市场需求&#xff0c;追求可持续性和竞争力&#xff0c;这也让运维行业迎来了前所未有的挑战和机遇…

Apollo云实验:使用Sim control仿真自动驾驶

使用Sim control仿真自动驾驶 概述Sim control仿真自动驾驶启动DreamView仿真系统 实验目的福利活动 主页传送门&#xff1a;&#x1f4c0; 传送 概述 自动驾驶汽车在实现落地应用前&#xff0c;需要经历大量的道路测试来验证算法的可行性和系统的稳定性&#xff0c;但道路测试…

内网穿透配置-Cpolar-Ngrok

文章目录 一、Cpolar1、cpolar软件的使用&#xff1a;&#xff08;1&#xff09;下载与安装&#xff08;2&#xff09;cpolar指定authtoken&#xff08;3&#xff09;获取临时域名&#xff08;4&#xff09;验证临时域名有效性 二、Ngrok1、配置内网穿透&#xff08;1&#xff…

数据挖掘题目:设ε= 2倍的格网间距,MinPts = 6, 采用基于1-范数距离的DBSCAN算法对下图中的实心格网点进行聚类,并给出聚类结果(代码解答)

问题 代码 import matplotlib.pyplot as plt import numpy as np from sklearn.cluster import DBSCAN #pip install matplotlib #pip install numpy #pip install scikit-learn # 实心格网点的坐标 solid_points np.array([[1, 1], [2, 1],[3, 1], [1, 2], [2, 2], [3, 2],[…

【蓝桥杯省赛真题41】Scratch电脑开关机 蓝桥杯少儿编程scratch图形化编程 蓝桥杯省赛真题讲解

目录 scratch电脑开关机 一、题目要求 编程实现 二、案例分析 1、角色分析

ucos_conf、ucos_src和ucos_port

目录 ucos_conf 文件夹ucos_src 文件夹ucos_port 文件夹 在 uC/OS-II 中&#xff0c;ucos_conf、ucos_src 和 ucos_port 是三个不同的文件夹&#xff0c;它们的作用和功能有所不同&#xff1a; ucos_conf 文件夹 ucos_conf 文件夹&#xff1a;ucos_conf 文件夹包含了 uC/OS-II…

高阶数据结构学习 —— 图(4)

文章目录 1、最短路径2、单源最短路径——Dijkstra算法&#xff08;正权值&#xff09;3、单源最短路径——BellmanFord算法1、BF优化&#xff1a;SPFA2、BF算法解决不了带负权回路的问题&#xff0c;实际上哪一个算法都无法求出来 4、多源最短路径——Floyd-Warshall算法 1、最…

汇编-注释

注释有两种说明方法&#xff1a; ●单行注释&#xff0c;用分号(&#xff1b;)开始。汇编器将忽略在同一行上分号之后的所有字符。 ●块注释&#xff0c; 用COMMENT伪指令和一个用户指定的符号开始。汇编器将忽略其后所有 的文本行&#xff0c;直到该用户指定的符号出现为止。…

让学生自助查询成绩的几种方法

在这个信息爆炸的时代&#xff0c;让学生能方便快捷的获取自己的成绩&#xff0c;无疑成为了老师们的一大挑战。我给各位老师介绍几种实用的方法&#xff0c;帮你实现在线发布成绩。 1. 使用在线表格或数据库 使用在线表格或数据库可以让你轻松地存储、管理和发布学生的成绩。…

Python接口自动化测试(接口状态)

本节开始&#xff0c;开始介绍python的接口自动化测试&#xff0c;首先需要搭建python开发环境&#xff0c;到https://www.python.org/下载python 版本直接安装就以了&#xff0c;建议 下载python2.7.11版本&#xff0c;当然&#xff0c;也是可以下载python最新版本的。 接口测…

课题学习(十)----阅读《基于数据融合的近钻头井眼轨迹参数动态测量方法》论文笔记

一、 引言 该论文针对三轴加速度计、磁通门和速率陀螺随钻测量系统&#xff0c;建立了基于四元数井眼轨迹参数测量模型&#xff0c;并依据状态方程和量测方程&#xff0c;应用2个扩卡尔曼滤波器、1个无迹卡尔曼滤波器和磁干扰校正系统对加速度计、磁通门信号进行滤波、校正&…

探索主题建模:使用LDA分析文本主题

在数据分析和文本挖掘领域&#xff0c;主题建模是一种强大的工具&#xff0c;用于自动发现文本数据中的隐藏主题。Latent Dirichlet Allocation&#xff08;LDA&#xff09;是主题建模的一种常用技术。本文将介绍如何使用Python和Gensim库执行LDA主题建模&#xff0c;并探讨主题…

什么是TCY油封?

机械由无数组件协同工作以确保平稳运行&#xff0c;其中一种不可或缺的部件是油封&#xff0c;特别是TCY油封。本文旨在阐明TCY油封的应用、其重要性以及它们如何提高机械的整体效率。 TCY油封主要用于轴密封。轴是一种旋转机器元件&#xff0c;横截面通常为圆形&#xff0c;用…

RAR Extractor v11.20(mac解压缩软件)

RAR Extractor是一款专门用于解压RAR格式压缩文件的软件&#xff0c;以下是关于RAR Extractor的详细介绍&#xff1a; 强大的解压功能&#xff1a;RAR Extractor能够解压RAR格式的压缩文件&#xff0c;无论是单一的RAR文件还是RAR文件包&#xff0c;都可以通过RAR Extractor进…

Python操作CMD大揭秘!轻松玩转命令行控制

导语&#xff1a; 命令行界面&#xff08;Command Line Interface&#xff0c;简称CLI&#xff09;是计算机操作系统中一种基于文本的用户界面&#xff0c;通过输入命令来与计算机进行交互。Python作为一门强大的编程语言&#xff0c;提供了丰富的库和模块&#xff0c;可以方便…