【干货分享】3D模型可视化、格式转换引擎和Parasolid如何集成?

news2024/11/24 20:07:39

​今天分享一个示例项目,该示例项目使用HOOPS链轮将HOOPS Exchange和Siemens Parasolid实施到HOOPS Visualize中。

HOOPS中文网icon-default.png?t=N4P3http://techsoft3d.evget.com/↓ 点击下方视频查看详情 ↓

HOOPS Visualize - Exchange和Parasolid集成视频

正如您在上面的视频中看到的,此示例说明了如何使用 Parasolid和HOOPS Visualize and Exchange开发3D建模应用程序。

它涵盖了所有主要的3D建模功能,如实体模型创建、编辑、查询、删除、导入和导出,包括HOOPS Visualize和Parasolid之间的实体、面和边实体映射。
这将是您的3D建模应用程序开发的评估、基准测试和POC的良好示例。

▶ 有两种方法:

  • 使用 Exchange-Parasolid 链轮

这是以下文档中解释的传统方法:
Exchange-Parasolid — HOOPS Visualize HPS 2023 SP1 文档

  • 使用Exchange链轮和ExchangeParasolid连接器

这种方法使用Exchange链轮,并可选择使用Parasolid使用HOOPS Exchange的以下 Parasolid 连接器:
HOOPS Exchange for Parasolid Developers — HOOPS Exchange 2023 文档

▶ 示例项目

从此处下载示例项目:
mfc_sandbox_HE-Ps.zip (333.8 KB)

▶ 链轮间源码对比

两个项目中实现了相同的3D建模命令。USING_EXCHANGE_PARASOLID每个处理器定义在 Exchange-Parasolid 和 Exchange sprocket 之间切换源代码,即在编辑实体后更新可视化,HPS::Parasolid::Component::Tessallate用于 Exchange-Parasolid 链轮,但HPS::Exchange::Component::Reload用于HOOPS Exchange链轮。

▶ Parasolid命令

Parasolid命令在类中实现PsProcess,并由两个项目共同使用。

▶ 交换初始化

要使用Exchange API,需要单独初始化Exchange。

▶ 模型导入

  • 使用 Exchange-Parasolid链轮

如果它导入3D CAD文件使用HPS::ExchangeParasolid::ImportNotifier,模型结构从根到Representation Item管理为Exchange::Component,但从主体到叶管理使用Parasolid::Component。

这意味着Exchange-Parasolid链轮在导入过程中将所有导入的实体转换为Parasolid实体。它比交换链轮需要更长的时间。

  • 使用交换链轮

为了解决性能问题,第二种方法使用HPS::Exchange::ImportNotifier.

它管理从根到叶的模型结构,使用Exchange::Component.

  • 交换Parasolid连接器

当第二种方法需要使用Parasolid时,获取A3DRiBrepModel使用HPS::Exchange::Component::GetExchangeEntity并将其转换为Parasolid body使用A3DRepresentationItemTranslateToPkParts.模型编辑后,Parasolid body可以在PRC中转换A3DRiBrepModel使用和替换。您将在第二个示例的类中看到此工作流示例。

执行过程

在转换 Parasolid实体之前,它不知道 Parasolid实体标签 ID。一旦实体转换为Parasolid,它就会保存在Parasolid会话中并且可以查询。

▶ Exchange-Parasolid 链轮与Exchange链轮

下面的视频比较了Exchange-Parasolid链轮和Exchange链轮之间的性能。

↓ 点击下方视频查看详情 ↓

HOOPS Exchange-Parasolid 链轮与交换链轮

  • 导入

Exchange-Parasolid链轮:7.4秒;交换链轮:4 秒

  • 编辑(删除面)

Exchange-Parasolid链轮:4.8秒、4.7秒;Exchange 链轮:13秒、7.1秒

如果源数据是基于Parasolid的,例如NX、SolidWorks或Solid Edge,它会检索3D CAD文件的PK_BODY。尽管此基准测试使用NX部件,但Exchange-Parasolid链轮需要7.4 - 4 = 3.4秒来检索PK_BODY。它比PRC到PK_BODY的转换更短:交换链轮的13 - 7.1=5.9 秒。

由于交换链轮在需要时转换Parasolid主体,因此需要更长的时间:13 秒。从第二次开始,Exchange链轮性能:7.1秒仍然低于Exchange-Parasolid链轮:4.7秒。这是因为Exchange sprocket需要创建A3DRiBrepBody以实现可视化。Exchange-Parasolid 链轮直接细分PK_BODY以实现可视化。

点击此处获取>>>3D模型轻量化及格式转换解决方案icon-default.png?t=N4P3https://isite.baidu.com/site/wjz8psvc/275e648c-86f9-40a6-a112-5771ac5491f2

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

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

相关文章

小白必看:零基础入门网络安全

1、什么是网络安全? 官方的回答:指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。 具有保密性、完整性、可用性、可控性…

chatgpt赋能python:Python如何分成两栏写入Word文档

Python如何分成两栏写入Word文档 在进行文本排版时,有些时候我们需要将文字分成两栏来排版,这样可以让文章更加美观,易读。 本文将介绍一种使用Python将文本分成两栏写入Word文档的方法。在介绍具体实现方法之前,我们先来了解一…

【SLAM】ROS平台下三种自主探索算法总结

目录 前言 一、frontier_exploration 二、explorate_lite 三、rrt_exploration 总结 前言 探索是指当机器人处于一个完全未知或部分已知环境中,通过一定的方法,在合理的时间内,尽可能多的获得周围环境的完整信息和自身的精确定位&#…

自动化测试支持

自动化测试支持 自动化测试是现代软件开发中不可或缺的一环。它可以帮助开发团队快速、精确地检测软件中的缺陷,提高软件质量和开发效率。 自动化测试可以在代码变更频繁、测试用例数庞大时,显著地减少测试时间和工作量。相对于手动测试,自动…

集权设施攻防兵法:实战攻防之堡垒机篇

一、黑客视角下的堡垒机 堡垒机是一种网络安全设备,用于保护和管理企业内部网络与外部网络之间的访问。它作为一种中间节点,提供安全的访问控制和审计功能,用于保护内部网络免受未经授权的访问和攻击。堡垒机通常被用作跳板服务器&#xff0…

计算机网络实验:RIP路由协议配置

目录 前言实验目的实验内容相关知识点实验设备实验过程总结 前言 计算机网络是指由多台计算机通过通信设备和通信线路互联起来,实现信息交换的系统。计算机网络中的路由器是一种专用的网络设备,它负责根据目的地址选择最佳的传输路径,将数据…

容器(第二篇)docker网络

Docker 网络实现原理: Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为…

6月6日汇报

1. 张量CP分解 三阶张量的CP分解是将其分解为三个矩阵。例如:一个三阶张量 ,则CP分解可以写为 其中, 表示向量外积, 。下图为三阶张量的CP分解: 将上面的CP分解展开,也可以写为: 假设有一个三维…

LS1028/LS1043/LS1046+FPGA+TSN多路时间敏感性网络智能工业网关方案

随着 物联网、大数据、人工智能等技术的快速发展与应用,给传统的云计算模式带来了巨大的挑战,这也催生出了计算模式的变革, 边缘计算由此诞生。 所谓边缘计算,是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用…

From Java To Kotlin 2:Kotlin 类型系统与泛型终于懂了

上期主要分享了 From Java To Kotlin 1 :空安全、扩展、函数、Lambda。 这是 From Java to Kotlin 第二期。 带来 表达式思维、子类型化、类型系统、泛型。 From Java to Kotlin 关键在于 思维的转变。 表达式思维 Kotlin 中大部分语句是表达式。 表达式思维是一…

Vue.js 中的数据请求是什么?如何进行数据请求?

Vue.js 中的数据请求是什么?如何进行数据请求? Vue.js 是一款流行的前端框架,它提供了许多方便的工具和 API,用于构建交互式的用户界面。其中,数据请求是 Vue.js 中重要的一部分,它可以让我们从服务器获取…

通过python封装商品ID采集1688商品详情数据,1688商品详情接口,1688API接口

1688是阿里巴巴集团旗下的B2B电商平台,提供海量的商品和服务。通过1688的API接口可以获取到商品的详细数据,并进行采集和分析。 1688的商品详情接口包括以下信息: 商品名称商品图片商品价格商品库存商品属性商品描述商品评价商品销量商品SK…

什么蓝牙耳机通话效果好,介绍几款不错的骨传导耳机

骨传导耳机是一种新型的耳机,相比于传统的耳机,骨传导耳机听歌时不需要将耳朵堵上,不会因为长时间佩戴而对听力造成损害。它不需要入耳也能听到声音,在户外运动时能够及时听到环境音,避免安全隐患。现在在骨传导市面上…

从零开始学习JavaScript:轻松掌握编程语言的核心技能⑤

从零开始学习JavaScript:轻松掌握编程语言的核心技能⑤ 1. JavaScript 函数定义2. JavaScript 函数参数2.1 函数显式参数(Parameters)与隐式参数(Arguments)2.1.1 显式参数(Parameters)2.1.2 隐式参数(Arguments) 2.2 …

HVV的艺术系列 之 上线的艺术

上线的艺术 很多时候,拿下的机器情况复杂多样。判断其出网性应该是首要工作。 01 到底该不该上线 承认的是,MSF和CS都是及其出色的后渗透工具。但是面对这种复杂多样的环境,上不上线是个我们要去认真考虑的问题,CS和MSF究竟能给我…

报表自动生成软件有哪些?热门报表自动生成软件推荐

随着数字化时代的到来,数据分析和处理变得越来越重要。在商业领域中,每个公司都需要制作各种类型的报表,以了解他们的运营情况、市场趋势和其他有关业务的信息。但是,手动创建这些报表是非常耗时且容易出错的。因此,报…

Vue3+Three.js+antvG2实战项目 智慧城市(五)

前言 在网上找了很久都没有找到使用Three.js开发智慧城市的免费文章或者免费视频,自己花了一点时间做了一个纯前端的智慧城市项目。 技术栈都是最新的:vue3vitetypeScriptThreeantv G2 源码分享 源码 模型,天空图盒子链接分享(不想下载源码可以只用下这个)提取码1234 20230424_…

报表开发工具Stimulsoft Report新增“用户参数”新功能,来看如何使用?

Stimulsoft Reports 是一款报告编写器,主要用于在桌面和Web上从头开始创建任何复杂的报告。可以在大多数平台上轻松实现部署,如ASP.NET, WinForms, .NET Core, JavaScript, WPF, Angular, Blazor, PHP, Java等,在你的应用程序中嵌入报告设计器…

PN/Modbus协议下,PLC与IO模块能否建立无线通讯?

在实际系统中,一个车间内PLC与多个IO信号点需要建立通讯,从而提高工作效率,通常距离在几十米到上百米不等。在有通讯需求的时候,如果布线的话,工程量较大且不美观,这种情况下比较适合采用无线通信方式。本方…

chatgpt赋能python:Python字符串截取指南:如何截取指定位置字符串

Python字符串截取指南:如何截取指定位置字符串 在Python中,字符串截取是一项非常常见的操作。当我们需要从一个字符串中提取特定位置的字符或子串时,我们可以使用Python内置的截取函数和切片操作来实现。在本文中,我们将介绍如何…