The APEX OEM platform provides you with both import and export capabilities. Firstly, it allows you to export PRC data which is the preferred 3D content supported by Adobe. Secondly, it allows you to use the powerful data translation capabilities of Acrobat Pro Extended to bring over 20 MCAD formats into your application. A full list of the supported formats is detailed here. From a import perspective, our integration uses the SDK to build up a HOOPS scene graph which includes all the assembly, visualisation and pmi information associated with a file.
To use the HOOPS/HIO component for APEX OEM, please follow the steps below:
During start-up, when HOOPS/MVO finds the APEX OEM HIO component in your application's path, it will perform the following steps:
Once the APEX OEM HIO component is successfully loaded, your application will be able export PRC data and import any of the files supported by Acrobat Pro Extended without having to recompile HOOPS. To utilize the extensive Acrobat 3D API services, you must compile against the Acrobat SDK directly and follow the steps described in 3.0 Integrating Directly with APEX OEM.
Note, the Adobe 3D OEM HIO component tries to add the root directory of the Acrobat Pro Extended directory to the path. However, on certain versions of Windows, this may not work. Thus, it is advisable that you add the root of your Acrobat Pro Extended install to your path.
To rebuild the APEX OEM HIO component, you must have the Acrobat SDK installed on your system. Define an environment variable A3DPRC_SDK_DIR and set it equal to <Acrobat_SDK>/<Version>/PluginSupport/Headers/3D. Then open the hio_prc_vc<version>.vcproj project located in the <hoops>/Dev_Tools/hoops_hio/hio_prc/source. Once the project is built against the correct libraries, an .hio file will be created. Note that you may face some obstacles building against a different version of Acrobat if interfaces are not compatible with the original libraries that the HIO component was built against.
PRC is primarily a 3D format and so the PRC export has the current following restrictions:
The APEX OEM supports the import of over 20 different file formats. A full list of the supported formats is available here. In each case, we support the full capabilities of APEX OEM with the main exception being that we do not access the brep information which is available. For developers who are interested in accessing the brep definition, they should contact the Tech Soft Support Team.
If you want to use the full range of services available in the Acrobat 3D API, the APEX OEM HIO Component may not be suitable. Instead, you should integrate directly with the Acrobat SDK. First, please ensure you review the APEX OEM Platform documentation so that you understand how the SDK is integrated into your application. Once you have done that, you can use our integration as the basis upon which to extend the APEX OEM API capabilities within your application. Note that you must have the Acrobat SDK installed on your system. To get our integration working within your application:
The HIO component tries to automatically set the path to include the root directory of the Acrobat Pro Extended install. However, on certain versions of Windows this does not work and so it is advisable that you add the root of your Acrobat Pro Extended install to your path.
Once you have completed the above steps, you do not need to rely on the APEX OEM 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 HIOUtilityPRC via HIOManager::RegisterInputHandler so that the HBaseModel::Read function can register the formats supported by Adobe 3D OEM. 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 the APEX OEM Platform into your application with code similar to this:
// Code for reading a Catia Assembly File HIOUtilityPRC prc_reader; HInputHandlerOptions prc_opt; prc_opt.m_pHBaseView = view; HFileInputResult result = prc_reader.FileInputByKey("c:\\temp\\myFile.CATProduct", &prc_opt); // Code for reading a Catia Assembly File HIOUtilityPRC prc_writer; HOutputHandlerOptions prc_opt; prc_opt.m_pHBaseView = view; HFileOutputResult result = prc_reader.FileOutputByKey("c:\\temp\\myFile.prc", m_pHView->GetModelKey(), &prc_opt);
At the time of writing, the APEX OEM HIO component is confined to the Windows platform for Microsoft Visual Studio 8 and 9.
For Release 17.1, the APEX OEM HIO component requires a valid installation of Acrobat 9.1 Pro Extended.