一、概述
HOOPS Exchange是一套高性能模型转换软件库,可以给软件提供强大的模型的导入和导出功能,我们可以将其单独作为转换工具使用,也可以将其集成到自己的软件中。
同样,HOOPS的其它产品也离不开HOOPS Exchange的支持,它们也需要HOOPS Exchange为其提供模型的导入和导出功能,下面分别介绍HOOPS Exchange在HOOPS Visualize HPS、HOOPS Visualize 3DF和HOOPS Communicator中的应用。
二、对HOOPS Visualize HPS的支持
在集成之前,应首先注意HOOPS Visualize HPS对应的HOOPS Exchange版本,版本不对(高了低了都不行),即便其它设置都对,也不会成功。测试环境HOOPS HPS 2021支持的HOOPS Exchange版本是HOOPS Exchange 2021。
具体版本对应关系,请查看HOOPS Visualize HPS的发行说明:
https://docs.techsoft3d.com/hps/latest/build/misc/release_notes.html
(1)添加hps_cs_sprk_exchange库文件
要在HOOPS Visualize HPS中使用HOOPS Exchange,首先需要导入Visualize-Exchange 集成库,C++ 用户需要链接到hps_sprk_exchange.lib。C# 用户需要添加对位于bin目录中的hps_cs_sprk_exchange.dll的引用。
这里演示在hps_wpf_sandbox中使用HOOPS Exchange,首先在其引用中添加hps_cs_sprk_exchange.dll库。
hps_cs_sprk_exchange.dll的路径如下:
(2)设置HOOPS Exchange的搜索路径
接下来,在Path环境变量中设置HOOPS Exchange的环境目录(或者将HOOPS Exchange的环境目录中的DLL复制到应用程序执行目录),不进行这一步,在运行程序的时候,会找不到库文件。
HOOPS Exchange的环境目录如下:
(3)添加HOOPS Exchange的条件编译符号
最后,设置条件编译符号,打开hps_wpf_sandbox工程的属性→生成,在条件编译符号中添加USING_EXCHANGE。
到此,在hps_wpf_sandbox中集成HOOPS Exchange的设置完成。
(4)运行效果
运行hps_wpf_sandbox工程,然后读取并显示catia模型,该过程使用了HOOPS Exchange软件库来导入模型。
三、对HOOPS Visualize 3DF的支持
接下来,介绍在HOOPS Visualize 3DF中集成HOOPS Exchange,在集成之前,也应注意HOOPS Visualize 3DF对应的HOOPS Exchange版本,版本不对,集成不会成功。测试环境HOOPS_3DF_2510支持的HIO对应Exchange版本是HOOPS Exchange 2020 SP2。
具体版本对应关系,请查看HOOPS Visualize 3DF的发行说明:
https://docs.techsoft3d.com/3df/latest/build/general/3df_release_notes.html
(1)使用HOOPS Exchange HIO组件
HOOPS Visualize 3DF使用HOOPS Exchange HIO组件来集成HOOPS Exchange,HOOPS Exchange HIO组件以.hio文件的形式提供。
首先在我们自己的应用程序的工作目录中创建一个hio_plugins目录,将在<hoops> / bin / <platform> /
hio_plugins / hio_exchange中的hioexchange <version> .hio文件复制到我们之前创建的工作目录中。
(2)设置HOOPS Exchange的搜索路径
接下来,在Path环境变量中设置HOOPS Exchange的环境目录(或者将HOOPS Exchange的环境目录中的DLL复制到应用程序执行目录),不进行这一步,在运行程序的时候,会找不到库文件。
HOOPS Exchange的环境目录如下:
(3)文件加载
接下来,在HOOPS Visualize 3DF中读取模型。
#include "HIOManager.h"
HFileInputResult result = InputOK;
HInputHandlerOptions input_options;
//使用HOOPS Exchange许可证密钥和HBaseView对象设置输入选项
//注意:如果在启动时通过对HC_Define_System_Options的初始调用已经包含了许可证密钥,则无需在此处包含它
const char* licensekey = "<license_key_string>";
input_options.m_license = licensekey;
input_options.m_pHBaseView = my_view;
// 打开所需的HOOPS / MVO模型段并读取文件
HC_Open_Segment_By_Key(<my model key>);
result = HBaseModel::Read("c:\\temp\\myFile.CATProduct", view, true, &input_options);
HC_Close_Segment();
(4)运行效果
运行HOOPS Visualize 3DF程序,使用HOOPS Exchange读取并显示了一个catia模型。
四、对HOOPS Communicator的支持
在HOOPS Communicator中,使用HOOPS Exchange很简单,因为HOOPS Communicator的软件包中,已经集成了HOOPS Exchange,名称为:converter.exe,其位置位于<HOOPS_Communicator>\authoring\converter\bin\win64中。
要转换模型也很简单,首先打开<HOOPS_Communicator>\quick_start目录:
双击start_server.bat文件启动HOOPS Communicator,以下信息表示启动成功:
之后将要转换的模型拖动到convert_file.bat上
模型就会进行轻量化转换:
最后一行是转换后模型的访问地址,可以通过它查看轻量化后的模型:
---慧都科技介绍---
慧都科技是Tech Soft 3D-HOOPS在中国区的唯一增值服务商,负责HOOPS试用,咨询,销售,技术支持,售后,旨在为企业提供一站式的3D开发解决方案。如果您的企业目前也有3D数据格式转换、3D web轻量化渲染的需求,需要获得3D 轻量化引擎HOOPS的60天免费试用,欢迎咨询在线客服或直接拨打023-68661681。
↓↓扫码关注“HOOPS”微信公众号,及时获取更多hoops技术资讯↓↓
--------------------------------------------------------------------------------------------------------------------------
发表评论