3D Web轻量化引擎HOOPS Commuicator如何从整体装配中创建破碎的装配零件和XML?

前言

虽然可以从某些本机CAD格式(其子组件驻留在单独的文件中,例如CATIA V5、Creo - Pro/E、NX或SolidWorks)创建破碎装配,但无法从整体装配文件(例如IFC、Revit)创建或3DXML。

本文介绍了一个示例,该示例使用HOOPS ExchangeHOOPS Communicator的LibConverter从整体程序集文件创建碎片程序集。可以使用HOOPS Communicator WebViewer API加载创建的破碎零件和主XML文件:loadSubtreeFromXmlFile以及 loadSubtreeFromScsXmlFile

申请HOOPS试用 HOOPS中文网

HOOPS与LibConverter交换

此示例导入一个整体程序集文件并使用HOOPS Exchange遍历它。遍历过程导出主XML文件并创建单独的零件模型。使用HOOPS Communicator的LibConverter将零件模型转换为SC (SCZ)和SCS文件。

使用Visitor模式遍历模型文件

此示例使用HOOPS Exchange示例中包含的访问者模式来遍历导入的模型。

HOOPS Exchange与LibConverter的使用

实例化零件

实例化零件仅表示一次,但在层次结构中出现多次。
通过设置false为SetTraverseInstance,访问者模式仅访问第一个部件实例,以便它创建实例化部件的部件SC。

A3DVisitorContainer sA3DVisitorContainer(CONNECT_TRANSFO);

sA3DVisitorContainer.SetTraverseInstance(false);

ProductOccurrence深复制

A3DAsmProductOccurrenceDeepCopy在创建单独的部件PRC之前,有必要创建部件ProductOccurrence的副本。

A3DAsmProductOccurrence* pCopyPO;

iRet = A3DAsmProductOccurrenceDeepCopy(pPartPO, &pCopyPO);

(同一零件ProductOccurrence不能同时从主模型文件和零件模型文件中引用)

如需了解更多HOOPS技术,可联系3D专线客服,为您提供专业的3D模型轻量化及格式转换解决方案~

相关推荐
云空42 分钟前
《升级版3D数字沙盘(点击弹窗+第一人称漫游双功能)》
3d·three.js
Quz15 小时前
QML 文字入场动画:逐字弹出、逐字飞入、3D 飞入
qt·3d·动画·qml
蓝速科技1 天前
蓝速科技 3D 全息舱与 AI 数字人酒店降本增效实战
人工智能·科技·3d
在下胡三汉2 天前
GLB与GLTF:有什么区别——你应该用哪一个?
3d·gltf
玖玥拾2 天前
Unity 3D 笔记(八)ScrollRect 滚动视图、NavMesh 自动寻路系统
笔记·3d·unity
极客侃科技2 天前
如何把真人动作迁移到3D角色上?用V2Fun完成视频动捕和动作应用
3d
2601_956414142 天前
AI3D工作流应该包括哪些环节?用V2Fun从生成推进到可动资产
人工智能·3d
2601_956414142 天前
不用下载客户端的3D AI工具有哪些?2026网页端工具对比测评
人工智能·3d
蓝速科技3 天前
蓝速科技 3D 全息舱 AI 数字人景区全天候无人讲解方案
人工智能·科技·3d
苏州邦恩精密3 天前
蔡司3D扫描仪采购要点及厂家服务能力分析
人工智能·科技·3d·自动化·汽车