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
emfrdr.dll
libBuffer.dll
OdBrepModeler_20.12_14.dll
oless.dll
TD_AcisBuilder_20.12_14.dll
TD_Alloc_20.12_14.dll
TD_Br_20.12_14.dll
TD_BrepBuilder_20.12_14.dll
TD_BrepBuilderFiller_20.12_14.dll
TD_BrepRenderer_20.12_14.dll
TD_Db_20.12_14.dll
TD_DbCore_20.12_14.dll
TD_DbRoot_20.12_14.dll
TD_Ge_20.12_14.dll
TD_Gi_20.12_14.dll
TD_Gs_20.12_14.dll
TD_Root_20.12_14.dll
TD_SpatialIndex_20.12_14.dll
TD_Zlib.dll
tbb.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
- NX
ugstep30.dll
- OBJ
aistep30.dll
dccstep30.dll
- Revit
libBuffer.dll
OdBrepModeler_20.12_14.dll
oless.dll
rvtstep30.dll
tbb.dll
TD_AcisBuilder_20.12_14.dll
TD_Alloc_20.12_14.dll
TD_Br_20.12_14.dll
TD_BrepBuilder_20.12_14.dll
TD_BrepBuilderFiller_20.12_14.dll
TD_BrepRenderer_20.12_14.dll
TD_Db_20.12_14.dll
TD_DbCore_20.12_14.dll
TD_DbRoot_20.12_14.dll
TD_Ge_20.12_14.dll
TD_Gi_20.12_14.dll
TD_Gs_20.12_14.dll
TD_Root_20.12_14.dll
TD_SpatialIndex_20.12_14.dll
TD_Zlib.dll
- All
*.tx
files (see below)
- 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
- WRML
wrlstep30.dll
- XT
xtstep30.dll
*.TX Files
These files are required by DWG and Revit readers:
ACCAMERA_20.12_14.tx
AcIdViewObj_20.12_14.tx
AcMPolygonObj15_20.12_14.tx
ATEXT_20.12_14.tx
ISM_20.12_14.tx
ModelerGeometry_20.12_14.tx
OdOleSsItemHandler_20.12_14.tx
RasterProcessor_20.12_14.tx
RecomputeDimBlock_20.12_14.tx
RText_20.12_14.tx
RxRasterServices_20.12_14.tx
SCENEOE_20.12_14.tx
TD_DbEntities_20.12_14.tx
TD_DbIO_20.12_14.tx
TD_TfCore_20.12_14.tx
ThreadPool_20.12_14.tx
WipeOut_20.12_14.tx
Revit needs additionnal files:
- All
TB_*.tx
files:TB_Analytical_20.12_14.tx
TB_Architecture_20.12_14.tx
TB_Base_20.12_14.tx
TB_Common_20.12_14.tx
TB_Database_20.12_14.tx
TB_ExLabelUtils_20.12_14.tx
TB_Family_20.12_14.tx
TB_Format2011Classes_20.12_14.tx
TB_Format2011Readers_20.12_14.tx
TB_Format2012Classes_20.12_14.tx
TB_Format2012Readers_20.12_14.tx
TB_Format2013Classes_20.12_14.tx
TB_Format2013Readers_20.12_14.tx
TB_Format2014Classes_20.12_14.tx
TB_Format2014Readers_20.12_14.tx
TB_Format2015Classes_20.12_14.tx
TB_Format2015Readers_20.12_14.tx
TB_Format2016Classes_20.12_14.tx
TB_Format2016Readers_20.12_14.tx
TB_Format2017Classes_20.12_14.tx
TB_Format2017Readers_20.12_14.tx
TB_Format2018Classes_20.12_14.tx
TB_Format2018Readers_20.12_14.tx
TB_Format2019Classes_20.12_14.tx
TB_Format2019Readers_20.12_14.tx
TB_Format2020Classes_20.12_14.tx
TB_Format2020Readers_20.12_14.tx
TB_Format2020Writers_20.12_14.tx
TB_FormatCommonClasses_20.12_14.tx
TB_FormatCommonReaders_20.12_14.tx
TB_Geometry_20.12_14.tx
TB_GeometryUtils_20.12_14.tx
TB_HostObj_20.12_14.tx
TB_Loader_20.12_14.tx
TB_LoaderBase_20.12_14.tx
TB_Main_20.12_14.tx
TB_MEP_20.12_14.tx
TB_ModelerGeometry_20.12_14.tx
TB_Rebar_20.12_14.tx
TB_StairsRamp_20.12_14.tx
Checksum.txt
- All
CSV/*.csv
files:AreaSpaceTypes.csv
BuiltInCategories.csv
BuiltInParameterGroups.csv
BuiltInParameters.csv
DisplayUnitTypes.csv
FamilyNames.csv
OmniClasses.csv
ParameterTypes.csv
SystemTypes.csv
UnitSymbolTypes.csv
UnitTypes.csv
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
DWG and Revit
If you deploy the binaries with DWG and Revit support, you must include the following files:
liblibcrypto.so
liboless.so
libtbb.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
- 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_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_Format2020Classes.tx
TB_Format2020Readers.tx
TB_Format2020Writers.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_Rebar.tx
TB_StairsRamp.tx
Checksum.txt
- All
CSV/*.csv
files:AreaSpaceTypes.csv
BuiltInCategories.csv
BuiltInParameterGroups.csv
BuiltInParameters.csv
DisplayUnitTypes.csv
FamilyNames.csv
OmniClasses.csv
ParameterTypes.csv
SystemTypes.csv
UnitSymbolTypes.csv
UnitTypes.csv
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.