HOOPS 3D Exchange (3DX) provides you with both import and export capabilities. Firstly, it allows you to use the powerful data translation capabilities of 3DX to bring the tesselation data from over 15 MCAD formats into the HOOPS scene-graph. A full list of the supported formats is detailed here. Specifically, the integration uses 3DX to build a HOOPS scene graph which includes all the assembly and visualization info, as well as PMI info (for select formats) that is contained in the file. Secondly, it allows you to export PRC, IGES, STEP, Parasolid and STL data. The PRC export is particularly important as it is the native 3D representation used within PDF. The PRC export capabilities are required if you want to export PDFs with 3D content.
To use the 3DX HIO component, you first need to rebuild it. This requires that you first have HOOPS 3D Exchange installed on your system. Define an environment variable H3DX_INSTALL_DIR and set it equal to the root of the HOOPS 3D Exchange installation directory. Then open the hio_3dx_vc <version> .vcproj project located in the <hoops> /Dev_Tools/hoops_hio/hio_3dx/source directory. Once the project is built, an .hio file will be created.
To subsequently use the HOOPS/HIO component for HOOPS 3D Exchange, please follow the steps below:
During start-up, when HOOPS/MVO finds the 3DX HIO component (and the 3DX DLLs) in your application's path, it will perform the following steps:
Once the 3DX HIO component is successfully loaded, your application will be able to export via any available writer and import any of the files supported by HOOPS 3D Exchange without having to recompile HOOPS. To utilize the extensive 3DX API services, you must compile against HOOPS 3D Exchange directly and follow the steps described in 3.0 Integrating Directly with HOOPS 3D Exchange.
PRC export has the current following restrictions:
A full list of supported CAD file formats is available here. Since HOOPS/3DGS does not have a BREP definition the HIO_3DX component ignores the BREP data and asks 3DX to provide all data in tesselated form.
If you want to use the full range of services available via HOOPS 3D Exchange, the 3DX HIO Component may not be suitable. Instead, you should integrate directly with the 3DX itself. First, please ensure you review the HOOPS 3D Exchange documentation so that you understand how 3DX is integrated into your application. Once you have done that, you can use our integration as the basis upon which to extend the 3D Exchange capabilities within your application. Note that you must have HOOPS 3D Exchange installed on your system. To get our integration working within your application:
Once you have completed the above steps, you do not need to rely on the 3DX HIO component anymore. Please remove the associated .hio file from the hio_plugins directory in your application's working directory. Note that in a direct integration, you must register HIOUtility3DX via HIOManager::RegisterInputHandler so that the HBaseModel::Read function can register the formats supported by HOOPS 3D Exchange. For more information on HOOPS/MVO file input/output architecture, please see section 4.0 File Input/Output and the I/O Manager of the HOOPS/MVO Programming Guide.
You should now be able to read any of the formats supported by HOOPS 3D Exchange into your application with code similar to this:
// Code for reading a CATIA V5 Assembly File HIOUtility3DX h3dx_reader; HInputHandlerOptions h3dx_opt; h3dx_opt.m_pHBaseView = view; HFileInputResult result = h3dx_reader.FileInputByKey("c:\\temp\\myFile.CATProduct", view->GetModelKey(), &h3dx_opt); // Code for exporting a STEP File A3DAsmModelFile * pModelFile = /* model file constructed by user or returned from 3DX */; HIOUtility3DX h3dx_writer; HOutputHandlerOptions h3dx_opt; h3dx_opt.m_pHBaseView = view; h3dx_opt.m_pExtendedData = pModelFile; HFileOutputResult result = h3dx_writer.FileOutputByKey("c:\\temp\\myFile.step", view->GetModelKey(), &h3dx_opt);
For Release 19.1, the 3DX HIO component project is supported under Windows 32-bit/64-bit for Microsoft Visual Studio 2008 and 2010.
For Release 19.0, the 3DX HIO component project is supported under Windows 32-bit for Microsoft Visual Studio 2008.
For Release 19.1, the 3DX HIO component supports HOOPS 3D Exchange 4.1.
For Release 19.0, the 3DX HIO component supports HOOPS 3D Exchange 3.00.