Distributing Your Application
When distributing any application built against HOOPS Exchange or HOOPS Publish, you will need to distribute HOOPS binaries as well. In general you should deploy all HOOPS binaries excluding those that you have identified as unnecessary for your build.
For instance, if you provide users with U3D support you will want to distribute your application with u3dstep30.dll
.
Please see the section for the platform you're interested in:
Distributing your application for Windows
On Windows, in order to run an application built against HOOPS Exchange, the execution environment must have the MSVC Redistributables for the following versions:
- Visual Studio 2015
- Visual Studio 2013
- Visual Studio 2008: x64 | x86
HOOPS Exchange and Publish on Windows is a modular distribution. Apart from mandatory core binaries, you may remove any unnecessary libraries for your deployment.
Whatever your distribution is, it should include all core binaries:
A3DLIBS.dll
TfFontMgr.dll
TfKernel.dll
TFKGEOM.dll
TFUGEOM.dll
Resources
The resource
folder is required for any application using HOOPS Publish. Moreover, the font file resource/Font/MyriadCAD.otf
is used by both HOOPS Exchange and HOOPS Publish and thus is required.
C++ API
The C++ API is available through A3DLIBSCpp.dll
. If you want to link against the API from a debug build, you may use A3DLIBSCppd.dll
.
Multi-process loading
A3DHELF.dll
is required for any multiprocess loading function. Multi-process loading is available through the A3DRWParamsGeneralData
structure.
Parasolid
hepb.dll
andpsbodyshop.dll
are necessary if you wish to export a Parasolid model to an open Parasolid session.HEPBMP.dll
is used for multi-process Parasolid translation through theA3DRepresentationItemsTranslateToPkPartsMultiProcess
function.
Readers
This list groups all binaries required for each reader:
- 3DXML
r3dxmlstep30.dll
Xvlstep30.dll
- ACIS
satstep31.dll
- Autodesk 3DS
aistep30.dll
dccstep30.dll
- CATIA V4
catstep30.dll
- CATIA V5
cgrstep30.dll
cv5step30.dll
- Creo
prostep30.dll
- CGR
cgrstep30.dll
- COLLADA
aistep30.dll
- DWF
a3dpostergeneration.dll
dwfstep30.dll
- DWG
dwgstep30.dll
ImageMagick.dll
libBuffer.dll
OdBrepModeler_19.12_14.dll
oless.dll
TD_AcisBuilder_19.12_14.dll
TD_Alloc_19.12_14.dll
TD_Br_19.12_14.dll
TD_BrepBuilder_19.12_14.dll
TD_BrepRenderer_19.12_14.dll
TD_Db_19.12_14.dll
TD_DbCore_19.12_14.dll
TD_DbRoot_19.12_14.dll
TD_Ge_19.12_14.dll
TD_Gi_19.12_14.dll
TD_Gs_19.12_14.dll
TD_Root_19.12_14.dll
TD_SpatialIndex_19.12_14.dll
TD_Zlib.dll
- All
*.tx
files exceptTB_*.tx
(see below)
- FBX
aistep30.dll
- GLTF
glstep30.dll
- HSF
a3dpostergeneration.dll
- I-deas
Ideasstep30.dll
- JT
JTstep30.dll
- IGES
igestep30.dll
- Inventor
invstep30.dll
ImageMagick.dll
- NX
ugstep30.dll
- OBJ
aistep30.dll
dccstep30.dll
- Revit
libBuffer.dll
OdBrepModeler_19.12_14.dll
oless.dll
rvtstep30.dll
TD_AcisBuilder_19.12_14.dll
TD_Alloc_19.12_14.dll
TD_Br_19.12_14.dll
TD_BrepBuilder_19.12_14.dll
TD_BrepRenderer_19.12_14.dll
TD_Db_19.12_14.dll
TD_DbCore_19.12_14.dll
TD_DbRoot_19.12_14.dll
TD_Ge_19.12_14.dll
TD_Gi_19.12_14.dll
TD_Gs_19.12_14.dll
TD_Root_19.12_14.dll
TD_SpatialIndex_19.12_14.dll
TD_Zlib.dll
- All
*.tx
files (see below)
- Rhino
rdmstep30.dll
- Solid Edge
sestep30.dll
- SolidWorks
slwstep30.dll
- STEP
stepstep30.dll
- STL
stlstep30.dll
- U3D
u3dstep30.dll
- VDA
Vdastep30.dll
- WRML
wrlstep30.dll
- XT
xtstep30.dll
*.TX Files
These files are required by DWG and Revit readers:
ACCAMERA_19.12_14.tx
AcIdViewObj_19.12_14.tx
AcMPolygonObj15_19.12_14.tx
ATEXT_19.12_14.tx
ISM_19.12_14.tx
ModelerGeometry_19.12_14.tx
OdOleSsItemHandler_19.12_14.tx
RasterProcessor_19.12_14.tx
RecomputeDimBlock_19.12_14.tx
RText_19.12_14.tx
RxRasterServices_19.12_14.tx
SCENEOE_19.12_14.tx
TD_BrepBuilderFiller_19.12_14.tx
TD_DbEntities_19.12_14.tx
TD_DbIO_19.12_14.tx
TD_TfCore_19.12_14.tx
ThreadPool_19.12_14.tx
WipeOut_19.12_14.tx
Revit also needs all TB_*.tx
files:
TB_Analytical_19.12_14.tx
TB_Architecture_19.12_14.tx
TB_Base_19.12_14.tx
TB_Common_19.12_14.tx
TB_Database_19.12_14.tx
TB_ExLabelUtils_19.12_14.tx
TB_Family_19.12_14.tx
TB_Format2011Classes_19.12_14.tx
TB_Format2011Readers_19.12_14.tx
TB_Format2012Classes_19.12_14.tx
TB_Format2012Readers_19.12_14.tx
TB_Format2013Classes_19.12_14.tx
TB_Format2013Readers_19.12_14.tx
TB_Format2014Classes_19.12_14.tx
TB_Format2014Readers_19.12_14.tx
TB_Format2015Classes_19.12_14.tx
TB_Format2015Readers_19.12_14.tx
TB_Format2016Classes_19.12_14.tx
TB_Format2016Readers_19.12_14.tx
TB_Format2017Classes_19.12_14.tx
TB_Format2017Readers_19.12_14.tx
TB_Format2018Classes_19.12_14.tx
TB_Format2018Readers_19.12_14.tx
TB_Format2019Classes_19.12_14.tx
TB_Format2019Readers_19.12_14.tx
TB_Format2019Writers_19.12_14.tx
TB_FormatCommonClasses_19.12_14.tx
TB_FormatCommonReaders_19.12_14.tx
TB_Geometry_19.12_14.tx
TB_GeometryUtils_19.12_14.tx
TB_HostObj_19.12_14.tx
TB_Loader_19.12_14.tx
TB_LoaderBase_19.12_14.tx
TB_Main_19.12_14.tx
TB_MEP_19.12_14.tx
TB_ModelerGeometry_19.12_14.tx
TB_StairsRamp_19.12_14.tx
Writers
This list details which binaries are required for each writer:
- 3MF
w3mf.dll
- FBX
aistep30.dll
- IGES
wiges.dll
- JT
wjt.dll
- OBJ
aistep30.dll
- SAT
wsat.dll
- STEP
wstp.dll
- STL
wstl.dll
- U3D
wu3d.dll
- VRML
wwrl.dll
- XT
hepb.dll
wxt.dll
TableToPDF
TableToPDF is a free add-on to HOOPS Publish, dedicated to the creation of tables in PDF documents.
TableToPDF uses third-party libraries that require LGPL conformance for distribution. TableToPDF can be downloaded from the TableToPDF download page. TableToPDF binaries have to be redistributed in the same folder as HOOPS Publish binaries.
Distributing your application for Linux
On Linux, HOOPS Exchange is distributed under one shared object file, libA3DLIBS-VERSION.so
(and a symbolic link to it: libA3DLIBS.so
).
The Linux distribution is provided in two versions, one version with support for DWG and Revit, and another version without support for DWG and Revit.
C++ API
The C++ API is available through libA3DLIBSCpp.so
.
Multi-process loading
A3DHELF.so
is required for any multiprocess loading function. Multi-process loading is available through the A3DRWParamsGeneralData
structure. Please ensure the file attributes for A3DHELF.so
are set with execute permission.
Parasolid
hepb.so
andlibpsbodyshop.so
are necessary if you wish to export a Parasolid model to an open Parasolid session.HEPBMP.so
is used for multi-process Parasolid translation through theA3DRepresentationItemsTranslateToPkPartsMultiProcess
function.- Please ensure the file attributes for
HEPBMP.so
are set with execute permission.
- Please ensure the file attributes for
Inventor
Inventor needs the libImageMagick.so
library to read textures.
DWG and Revit
If you deploy the binaries with DWG and Revit support, you must include the following files:
liblibcrypto.so
liboless.so
libTD_AcisBuilder.so
libTD_Alloc.so
libTD_Br.so
libTD_BrepRenderer.so
libTD_Db.so
libTD_DbRoot.so
libTD_Ge.so
libTD_Gi.so
libTD_Gs.so
libTD_Root.so
libTD_SpatialIndex.so
libTD_Zlib.so
- All
*.tx
files exceptTB_*.tx
:AcIdViewObj.tx
AcMPolygonObj15.tx
ATEXT.tx
ISM.tx
ModelerGeometry.tx
OdOleSsItemHandler.tx
RasterProcessor.tx
RecomputeDimBlock.tx
RText.tx
RxRasterServices.tx
SCENEOE.tx
TD_BrepBuilderFiller.tx
TD_DbEntities.tx
TD_DbIO.tx
TD_FtFontEngine.tx
TD_TfCore.tx
ThreadPool.tx
WipeOut.tx
ACCAMERA.tx
DWG also needs libImageMagick.so
.
Revit also needs all TB_*.tx
files:
TB_Analytical.tx
TB_Architecture.tx
TB_Base.tx
TB_Common.tx
TB_Database.tx
TB_ExLabelUtils.tx
TB_Family.tx
TB_Format2011Classes.tx
TB_Format2011Readers.tx
TB_Format2012Classes.tx
TB_Format2012Readers.tx
TB_Format2013Classes.tx
TB_Format2013Readers.tx
TB_Format2014Classes.tx
TB_Format2014Readers.tx
TB_Format2015Classes.tx
TB_Format2015Readers.tx
TB_Format2016Classes.tx
TB_Format2016Readers.tx
TB_Format2017Classes.tx
TB_Format2017Readers.tx
TB_Format2018Classes.tx
TB_Format2018Readers.tx
TB_Format2019Classes.tx
TB_Format2019Readers.tx
TB_Format2019Writers.tx
TB_FormatCommonClasses.tx
TB_FormatCommonReaders.tx
TB_Geometry.tx
TB_GeometryUtils.tx
TB_HostObj.tx
TB_Loader.tx
TB_LoaderBase.tx
TB_Main.tx
TB_MEP.tx
TB_ModelerGeometry.tx
TB_StairsRamp.tx
TableToPDF
TableToPDF is a free add-on to HOOPS Publish, dedicated to the creation of tables in PDF documents.
TableToPDF uses third-party libraries that require LGPL conformance for distribution. TableToPDF can be downloaded from the TableToPDF download page. TableToPDF binaries must be redistributed in the same folder as HOOPS Publish binaries.
Distributing your application for macOS
On macOS, HOOPS Exchange is distributed in one dynamic library file, libA3DLIBS-VERSION.dylib
(and a symbolic link to it: libA3DLIBS.dylib
).
C++ API
The C++ API is available through libA3DLIBSCpp.dylib
.
Distributing your application for Android
On Android, HOOPS Exchange is distributed in one dynamic library file, libA3DLIBS-VERSION.so
(and a symbolic link to it: libA3DLIBS.so
).
C++ API
The C++ API is available through libA3DLIBSCpp.so
.
Distributing your application for iOS
HOOPS Exchange for iOS is provided as a static library. Thus no binary is required to be distributed with your application.