Distributing Your Application

Windows Redistributables

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.

Binaries

HOOPS Exchange and HOOPS Publish share the same binaries folder. Not all binaries are used by both products; therefore, developers who want to minimize the size of their application should only include those items with the functionality they are using.

The following table lists the binaries in the _bin_ folder that are required for distributing a HOOPS Publish application. All items listed as “Core logic” must be included with your product - all others are optional. If you are a HOOPS Publish developer who also uses HOOPS Exchange, you must also include the relevant binaries from the HOOPS Exchange distribution list.

Some of the 3rd-Party Softwares used for the core logic are also used in some of HOOPS Exchange’s readers and writers. Those have not been mentioned.
Component Library file Associated 3rd-Party Software
Core logic
A3DLIBS.dll
TfFontMgr.dll
TfKernel.dll
TFKGEOM.dll
TFUGEOM.dll
Boost
FreeType
LZMA
Nlohmann’s JSON
OpenNURBS SDK
PugiXml
STB Image
STB Image Write
TinyGLTF
TwoFish
ZLib
ZLib minizip
DL180ACE.dll
Adobe PDFL SDK
Boost
BZIP 2
Expat
ICCPROFLIB
ICU
JPEG
PNG
MoreFiles
MoreFilesX
Tiff
Zlib
DL180AGM.dll
DL180ARE.dll
DL180AXE9SharedExpat.dll
DL180AdobeXMP.dll
DL180BIB.dll
DL180BIBUtils.dll
DL180CoolType.dll
DL180JP2K.dll
DL180Libpdfl.dll
icudt74.dll
icuuc74.dll
HOOPS Exchange extension Readers 3DXML
r3dxmlstep30.dll
Xvlstep30.dll
 
3MF 3mfstep30.dll Lib3MF
ACIS satstep31.dll  
Autodesk 3DS aistep30.dll Assimp
CATIA V4 catstep30.dll  
CATIA V5
cgrstep30.dll
cv5step30.dll
 
Creo prostep30.dll  
CGR cgrstep30.dll  
Collada aistep30.dll  
DWF
dwf30.dll
a3dpostergeneration.dll
libjpeg
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 except TB_*.tx









CS-Map
curl
DWFToolkit
FreeImage
FreeType
gdtoa
libexpat
LibJPEG
libJXR
LibOpenJpeg
LibPNG
LibRawLite
LibTIFF4
LibWebP
libxl
libxml2
minizip
oless
oneTBB
openCOLLADA
OpenExr
openssl
PCRE
pdfium
qpdf
sqlite
stsflib
tinyxml
U3D
UTF
wchar
xerces
zlib
FBX aistep30.dll Assimp
GLTF glstep30.dll  
I-deas Ideastep30.dll  
IFC stepstep30.dll  
JT JTstep30.dll  
IGES igestep30.dll  
Inventor Invstep30.dll  
Navisworks nwstep30.dll  
NX ugstep30.dll  
OBJ
aistep30.dll
dcctep30.dll
Assimp
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
tbb.dll
tinyxml.dll
All *.tx files









CS-Map
DWFToolkit
FreeImage
FreeType
gdtoa
libexpat
LibJPEG
libJXR
liblzma
LibOpenJpeg
LibPNG
LibRawLite
LibTIFF4
LibWebP
libxml2
minizip
oless
oneTBB
openCOLLADA
OpenExr
openssl
PCRE
pdfium
qpdf
sqlite
stsflib
tinyxml
U3D
UTF
wchar
xerces
zlib
Rhino rdmstep30.dll Opennurbs
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  
Writers 3MF w3mf.dll Lib3MF
FBX aistep30.dll  
IGES wiges.dll  
JT wjt.dll  
OBJ aistep30.dll Assimp
SAT wsat.dll  
STEP wstp.dll  
STL wstl.dll  
U3D wu3d.dll  
VRML wwrl.dll  
XT
hepb.dll
wxt.dll
 
HTML and SCS export (64-bit only) PDFParser.dll
Adobe PDFL SDK
lodepng
tcb-span
PDFThumbnail.dll
libprc2sc.dll HOOPS Communicator
Poster generation D3DCompiler_47.dll  
a3dpostergeneration.dll libjpeg
PDF Thumbnail PDFThumbnail.dll
PDFium
abseil
Toolkit Telemetry Dispatcher a3dttd.dll


Component Library file Associated 3rd-Party Software
Linux Linux NO DWG
HOOPS Publish core with HOOPS Exchange extension
(also contains ODA extension for Linux package)
libA3DLIBS.so.<version>
libA3DLIBS.so
Assimp
Boost
CS-Map
Curl
DWFToolkit
FreeImage
FreeType
Lib3MF
LibXl
libXML2
LZMA
Nlohmann’s JSON
Oless
oneTBB
OpenCollada
OpenNURBS SDK
OpenSSL
PCRE
PDFium
PugiXml
QPDF
STB Image
STB Image Write
TinyGLTF
TinyXML
TwoFish
UTF
Wchar
ZLib
ZMQ
Assimp
Boost
FreeType
Lib3MF
LZMA
Nlohmann’s JSON
OpenNURBS
PugiXml
STB Image
STB Image Write
TinyGLTF
TwoFish
libDL180ACE.so.18.0.5
Adobe PDFL SDK
Boost
BZIP 2
Expat
ICCPROFLIB
ICU
JPEG
PNG
MoreFiles
MoreFilesX
Tiff
Zlib
Adobe PDFL SDK
Boost
BZIP 2
Expat
ICCPROFLIB
ICU
JPEG
PNG
MoreFiles
MoreFilesX
Tiff
Zlib
libDL180AGM.so.18.0.5
libDL180ARE.so.18.0.5
libDL180AXE8SharedExpat.so.18.0.5
libDL180AdobeXMP.so.18.0.5
libDL180BIB.so.18.0.5
libDL180BIBUtils.so.18.0.5
libDL180CoolType.so.18.0.5
libDL180JP2K.so.18.0.5
libDL180pdfl.so
libicudata.so.74
libicuuc.so.74
HTML and SCS export (64-bit only) libpdfparser.so
Adobe PDFL SDK
lodepng
tcb-span
Adobe PDFL SDK
tcb-span
libpdfthumbnail.so
libprc2sc.so HOOPS Communicator HOOPS Communicator
Poster generation liba3dpostergeneration.so    
PDF Thumbnail libpdfthumbnail.so
PDFium | | PDFium
abseil | | abseil
HOOPS Exchange’s Parasolid support libphepb.so libpsbodyshop.so HEPBML.so



Developers who are using a CAD import with HOOPS Publish may need to add additional DLLs in their binaries directory for integration purposes. See Distributing Your Application in the Exchange documentation for more information.

Linux developers: The bulk of HOOPS Publish is delivered as a single .so file, libA3DLIBS.so.<version>. A symbolic link named libA3DLIBS.so pointing to libA3DLIBS.so.<version> will also be included in the bin directory.

Resources

The resource directory is to be used by HOOPS Publish. It is advised to always include this directory in a HOOPS Publish distribution, to avoid unpredictable behavior on specific customer platforms. Only restricted minimal usage of HOOPS Publish that produces PDF files without any texts could be supported without the resource directory and its sub-folders.

Also, resourceFont contains the Adobe MyriadCAD OpenType font which is provided with HOOPS Exchange and HOOPS Publish to ensure standard GD&T symbols are available. This font must be installed to ensure accurate display of PMI data. The MyriadCAD font may only be redistributed with HOOPS Exchange and HOOPS Publish enabled applications.