Loading
0

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

HOOPS Communicator是一款简单而强大的工业级高性能3D Web可视化开发包,其主要应用于Web领域,主要加载其专有的SCS、SC、SCZ格式文件;HOOPS还拥有另一个桌面端开发包HOOPS Visualize,主要加载HSF、HMF轻量化格式文件。两者虽然同为Tech Soft 3D公司的图像处理引擎,但两者加载的文件却并不通用,对于同时使用两个开发包的用户来说,需要维护两套文件系统。

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试用               HOOPS中文网

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

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

图片