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
- Distributing Your Application for Linux
- Distributing Your Application for macOS
- Distributing Your Application for Android
- Distributing Your Application for iOS
Distributing Your Application for Windows
HOOPS Exchange being an explicitly shared library, the impact occurs at runtime. Any application running HOOPS Exchange must have at least Visual Studio 2019 redistributable.
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
If you are evaluating HOOPS Exchange, a3dttd.dll needs to be included which is a prerequisite to initalize HOOPS Exchange with a trial license. This DLL is not required while initializing HOOPS Exchange with long term perpetual license.
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.
Parasolid
- hepb.dll and psbodyshop.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 the
A3DRepresentationItemsTranslateToPkPartsMultiProcess()
function.
Readers
This list groups all binaries required for each reader:
- 3DXML
r3dxmlstep30.dll
Xvlstep30.dll
- 3MF
3mfstep30.dll
- ACIS
satstep31.dll
- Autodesk 3DS
aistep30.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
OdBrepModeler_25.8_16.dll
OdConstraints_25.8_16.dll
TD_AcisBuilder_25.8_16.dll
TD_Alloc_25.8_16.dll
TD_Br_25.8_16.dll
TD_BrepBuilderFiller_25.8_16.dll
TD_BrepBuilder_25.8_16.dll
TD_BrepRenderer_25.8_16.dll
TD_DbCore_25.8_16.dll
TD_DbRoot_25.8_16.dll
TD_Db_25.8_16.dll
TD_Ge_25.8_16.dll
TD_Gi_25.8_16.dll
TD_Gs_25.8_16.dll
TD_Root_25.8_16.dll
TD_SpatialIndex_25.8_16.dll
TD_Zlib.dll
dwgstep30.dll
libBuffer.dll
oless.dll
tbb12.dll
tinyxml.dll
emfrdr.dll
- All
*.tx
files exceptTB_*.tx
(see *.TX Files)
- FBX
aistep30.dll
- GLTF
glstep30.dll
- I-deas
Ideasstep30.dll
- IFC
stepstep30.dll
- JT
JTstep30.dll
- IGES
igestep30.dll
- Inventor
invstep30.dll
- Navisworks
nwstep30.dll
- NX
ugstep30.dll
- OBJ
aistep30.dll
- Revit
OdBrepModeler_25.8_16.dll
OdConstraints_25.8_16.dll
TD_AcisBuilder_25.8_16.dll
TD_Alloc_25.8_16.dll
TD_Br_25.8_16.dll
TD_BrepBuilderFiller_25.8_16.dll
TD_BrepBuilder_25.8_16.dll
TD_BrepRenderer_25.8_16.dll
TD_DbCore_25.8_16.dll
TD_DbRoot_25.8_16.dll
TD_Db_25.8_16.dll
TD_Ge_25.8_16.dll
TD_Gi_25.8_16.dll
TD_Gs_25.8_16.dll
TD_Root_25.8_16.dll
TD_SpatialIndex_25.8_16.dll
TD_Zlib.dll
libBuffer.dll
oless.dll
rvtstep30.dll
tbb12.dll
tinyxml.dll
- All
*.tx
files (see *.TX Files)
- Rhino
rdmstep30.dll
- Solid Edge
sestep30.dll
- SolidWorks
slwstep30.dll
- STEP
stepstep30.dll
- STEP XML
stepxmlstep30.dll
- STL
stlstep30.dll
- U3D
u3dstep30.dll
- VDA
Vdastep30.dll
- VRML
wrlstep30.dll
- XT
xtstep30.dll
*.TX Files
These files are required by DWG and Revit readers:
ACCAMERA_25.8_16.tx
ATEXT_25.8_16.tx
AcIdViewObj_25.8_16.tx
AcMPolygonObj15_25.8_16.tx
ISM_25.8_16.tx
ModelerGeometry_25.8_16.tx
OdOleSsItemHandler_25.8_16.tx
RText_25.8_16.tx
RasterProcessor_25.8_16.tx
RecomputeDimBlock_25.8_16.tx
RxRasterServices_25.8_16.tx
SCENEOE_25.8_16.tx
TD_AssetXMLParser_25.8_16.tx
TD_DbEntities_25.8_16.tx
TD_DbIO_25.8_16.tx
TD_FtFontEngine_25.8_16.tx
TD_TfCore_25.8_16.tx
ThreadPool_25.8_16.tx
Revit needs additionnal files:
- All
TB_*.tx
files:TB_Analytical_25.8_16.tx
TB_Architecture_25.8_16.tx
TB_Base_25.8_16.tx
TB_Common_25.8_16.tx
TB_Database_25.8_16.tx
TB_DPart_25.8_16.tx
TB_Essential_25.8_16.tx
TB_ExLabelUtils_25.8_16.tx
TB_Family_25.8_16.tx
TB_Format2011Classes_25.8_16.tx
TB_Format2011Readers_25.8_16.tx
TB_Format2012Classes_25.8_16.tx
TB_Format2012Readers_25.8_16.tx
TB_Format2013Classes_25.8_16.tx
TB_Format2013Readers_25.8_16.tx
TB_Format2014Classes_25.8_16.tx
TB_Format2014Readers_25.8_16.tx
TB_Format2015Classes_25.8_16.tx
TB_Format2015Readers_25.8_16.tx
TB_Format2016Classes_25.8_16.tx
TB_Format2016Readers_25.8_16.tx
TB_Format2017Classes_25.8_16.tx
TB_Format2017Readers_25.8_16.tx
TB_Format2018Classes_25.8_16.tx
TB_Format2018Readers_25.8_16.tx
TB_Format2019Classes_25.8_16.tx
TB_Format2019Readers_25.8_16.tx
TB_Format2020Classes_25.8_16.tx
TB_Format2020Readers_25.8_16.tx
TB_Format2021Classes_25.8_16.tx
TB_Format2021Readers_25.8_16.tx
TB_Format2022Classes_25.8_16.tx
TB_Format2022Readers_25.8_16.tx
TB_Format2023Classes_25.8_16.tx
TB_Format2023Readers_25.8_16.tx
TB_Format2024Classes_25.8_16.tx
TB_Format2024Readers_25.8_16.tx
TB_Format2025Classes_25.8_16.tx
TB_Format2025Readers_25.8_16.tx
TB_Format2025Writers_25.8_16.tx
TB_FormatCommonClasses_25.8_16.tx
TB_FormatCommonReaders_25.8_16.tx
TB_GeometryUtils_25.8_16.tx
TB_Geometry_25.8_16.tx
TB_HostObj_25.8_16.tx
TB_LoaderBase_25.8_16.tx
TB_Loader_25.8_16.tx
TB_MEP_25.8_16.tx
TB_Main_25.8_16.tx
TB_ModelerGeometry_25.8_16.tx
TB_NumberingSchema_25.8_16.tx
TB_Rebar_25.8_16.tx
TB_RoomAreaPlan_25.8_16.tx
TB_StairsRamp_25.8_16.tx
TB_Structural_25.8_16.tx
Writers
This list details which binaries are required for each writer:
- 3MF
w3mf.dll
- FBX
aistep30.dll
- GLTF
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
Distributing Your Application for Linux
On Linux, HOOPS Exchange is distributed under one shared object file, libA3DLIBS.so.VERSION (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.
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 the :func:A3DRepresentationItemsTranslateToPkPartsMultiProcess
function.- Please ensure the file attributes for
HEPBMP.so
are set with execute permission.
- Please ensure the file attributes for
DWG and Revit
If you deploy the binaries with DWG and Revit support, you must include the following files:
liblibBuffer.so
liblibcrypto.so
libOdBrepModeler.so
libOdConstraints.so
liboless.so
libTD_AcisBuilder.so
libTD_Alloc.so
libTD_Br.so
libTD_BrepBuilder.so
libTD_BrepBuilderFiller.so
libTD_BrepRenderer.so
libTD_Db.so
libTD_DbCore.so
libTD_DbRoot.so
libTD_Ge.so
libTD_Gi.so
libTD_Gs.so
libTD_Root.so
libTD_SpatialIndex.so
libTD_Zlib.so
libtinyxml.so
- All
*.tx
files exceptTB_*.tx
:ACCAMERA.tx
AcIdViewObj.tx
AcMPolygonObj15.tx
ATEXT.tx
ISM.tx
ModelerGeometry.tx
OdOleSsItemHandler.tx
RasterProcessor.tx
RecomputeDimBlock.tx
RText.tx
RxRasterServices.tx
SCENEOE.tx
TD_DbEntities.tx
TD_DbIO.tx
TD_FtFontEngine.tx
TD_TfCore.tx
ThreadPool.tx
WipeOut.tx
Revit needs additionnal files:
- All
TB_*.tx
files:TB_Analytical.tx
TB_Architecture.tx
TB_Base.tx
TB_Common.tx
TB_Database.tx
TB_DPart.tx
TB_Essential.tx
TB_ExLabelUtils.tx
TB_ExportUtils.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_Format2020Classes.tx
TB_Format2020Readers.tx
TB_Format2021Classes.tx
TB_Format2021Readers.tx
TB_Format2022Classes.tx
TB_Format2022Readers.tx
TB_Format2023Classes.tx
TB_Format2023Readers.tx
TB_Format2024Classes.tx
TB_Format2024Readers.tx
TB_Format2025Classes.tx
TB_Format2025Readers.tx
TB_Format2025Writers.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_NumberingSchema.tx
TB_Rebar.tx
TB_RoomAreaPlan.tx
TB_StairsRamp.tx
TB_Structural.tx
TD_AssetXMLParser.tx
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).
Distributing Your Application for Android
On Android, HOOPS Exchange is distributed in one dynamic library file, libA3DLIBS.so.VERSION (and a symbolic link to it: libA3DLIBS.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.