干货分享 | 3D WEB轻量化引擎HOOPS Communicator如何读取复杂大模型文件?

HOOPS Communicator是一款简单而强大的工业级高性能3D Web可视化开发包,其主要应用于Web领域,主要加载其专有的SCS、SC、SCZ格式文件;HOOPS还拥有另一个桌面端开发包HOOPS Visualize,主要加载HSF、HMF轻量化格式文件。

两者虽然同为Tech Soft 3D公司的图像处理引擎,但两者加载的文件却并不通用,对于同时使用两个开发包的用户来说,需要维护两套文件系统。

HOOPS中文网icon-default.png?t=N7T8http://techsoft3d.evget.com/Tech Soft 3D公司也注意到这个问题,因此在内部提出了两个图像引擎使用归一的计划。从HOOPS Visualize HPS 2020 SP2(桌面端)版本开始,HPS开始集成HOOPS Communicator Sprocket,该工具支持HPS打开SCS文件(本地文件)以及从HOOPS Communicator服务端读取SC文件(流缓存文件),实现了Web端和桌面端读取统一格式文件的计划。

下面,让我们来看一看在HPS中如何读取HOOPS Communicator服务端文件。

加载文件

加载本地模型文件

SCS文件在HOOPS作为本地文件使用,HPS加载它并不需要服务器,直接打开就好。

首先打开HPS软件包随附的应用程序hps_mfc_hca_sandbox.exe,然后打开相应版本的SCS文件。

显示效果如下:

HOOPS Communicator Sprocket加载文件的过程如下:

HPS :: HCA :: NetworkImportOptionsKit中设置访问参数。

使用HPS :: HCA :: File :: Import导入文件

等待程序通知,使得我们知道模型何时完成加载。

加载本地模型的示例代码如下:

以这种方式加载模型时,调用Wait()将等待整个文件加载,就像加载其它本地文件类型一样。

1 加载网络模型

除了直接加载本地模型外,HPS还可以加载HOOPS Communicator服务器上的流缓存模型(SC文件)。加载流缓存模型与从文件系统加载文件不同,需要使用到HOOPS Communicator服务器通过网络传输文件。除了客户端应用程序之外,我们还需要一个可被访问的HOOPS Communicator服务器。其整个过程如下:

1.首先需要启动HOOPS Communicator服务器,打开HOOPS Communicator根目录\quick_start文件夹,运行start_server.bat批处理文件启动服务。

HOOPS Communicator服务器启动成功:

打开HPS软件包随附的应用程序hps_mfc_hca_sandbox.exe,设置需要访问的HOOPS Communicator服务器路径以及访问文件名称,这里访问的文件格式是SCZ,它是SC格式的单文件格式。

点击Connet,加载服务端流缓存模型。

加载流缓存模型的示例代码如下:

通过网络加载模型时,调用Wait()将仅等待到开始导入流式传输数据,在将几何体添加到场景时会将控制权返回给用户。这是因为通过网络导入的文件可能非常大,也许永远无法完全加载。

注意事项

HOOPS Communicator Sprocket加载模型文件,需要注意一些问题:

所需要的功能库

HOOPS Communicator Sprocket是在HPS正常功能外添加的功能插件,需要一些额外的功能库,如果缺少这些功能库,HOOPS Communicator Sprocket将不能正常工作,HOOPS Communicator Sprocket所需要的功能库如下:

  • cc_exchange_lib.dll
  • hc_access.dll
  • libeay32.dll
  • ssleay32.dll
  • v8.dll
  • v8_libbase.dll
  • v8_libplatform.dll
  • websockets.dll

版本对应

HOOPS Communicator Sprocket与HOOPS Communicator的版本必须对应,否则将无法加载文件,比如HPS 2020 SP2集成HOOPS Communicator Sprocket版本,需要使用对应的HOOPS Communicator版本为2020 SP1 U2,具体版本的对应关系,需要查询HPS的版本发布页面,其上有该版本HPS的HOOPS Communicator Sprocket对应的HOOPS Communicator版本。

支持的文件类型

HOOPS Communicator在提供模型服务之前,需要将其它CAD格式文件转换为自己专有SC、SCS和SCZ文件格式。与通常为B-rep的CAD文件格式不同,它们针对流进行了优化,并且经过镶嵌处理。这三种文件格式HOOPS Communicator Sprocket都可以读取,三种文件格式描述如下:

  • SCS文件不需要Communicator服务器即可访问。它们可以通过HOOPS Communicator Sprocket直接加载。在这种情况下,整个SCS文件将被加载到Visualize中。
  • SC文件通过服务器的网络流式传输,通常会在后台分解为多个文件。
  • SCZ文件是SC格式的单文件格式。

申请HOOPS试用icon-default.png?t=N7T8http://x7pfmmn259623uby.mikecrm.com/l9292M9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HOOPS Exchange是一个软件工具,它提供了对模型的B-rep定义的完全访问权限,并且允许开发人员将模型导入到他们的几何引擎中。开发人员可以使用HOOPS Exchange的API来进行各种操作,例如分割周期性曲面、转换修剪曲线等。此外,HOOPS Exchange还可以将模型导出为多种B-rep格式,如STEP、IGES、JT和ACIS,开发人员可以根据自己的需要选择导出的文件类型。HOOPS Exchange还包括Parasolid连接器组件,可以与Parasolid建模器进行集成,并确保导入的模型质量最高。如果开发人员只对B-rep数据感兴趣,他们可以使用单个高级API从任何文件中提取B-rep,并将其带入活动的Parasolid会话。这样可以大大减少将HOOPS Exchange集成到基于Parasolid应用程序中所需的时间。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [【技术指南】3D转换工具HOOPS Exchange的功能特征和典型使用场景全解析(一)](https://blog.csdn.net/Juvien_Huang/article/details/131637552)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [【技术指南】3D转换工具HOOPS Exchange的功能特征和典型使用场景全解析(二)](https://blog.csdn.net/Juvien_Huang/article/details/131764724)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值