Evaluating HOOPS Publish

This document comprises a set of notes to aid evaluators of HOOPS Publish and is intended to supplement the supplied programming and reference guides. It is advised that those new to HOOPS Publish read these notes before, or at the same time as, reading the Programming Guide.

The Technical Overview, available separately, provides a high-level guide to HOOPS Publish. Some concepts are introduced in this document and it is advisable to read it first.

How to Start Your HOOPS Publish Evaluation

Getting started with HOOPS Publish is simple. We recommend the following steps:

  • Read the Technical Overview and this Getting Started Guide.

  • Download and install the HOOPS Publish Package.

  • Use the “License Generator” button on the HOOPS Publish downloads page to generate a license key. Visit this link, click “Downloads”, then “Generate Key”. The key will be delivered in the file hoops_license.h. Copy this file into the HOOPS Publish include directory.

  • Build and run the samples and review the pre-installed PDF templates. Don’t forget to generate a license key from the download site!

  • Review PDF template creation methods using Adobe Acrobat and Forms tool.

  • Start creating and publishing your own 3D PDFs.

  • Subsequently review the Adobe JavaScript for Acrobat 3D Help.

  • For 3D data creation or modification review the API for 3D data authoring guides.

Package Hierarchy

  • <hoops_publish root directory>
    • bin
      • resource

      • <platform> (DLLs for Windows and .so for Linux)

    • cpp
      • include (for the C++ interface only)

    • documentation
      • documentation.exchange

      • documentation.publish

    • include

    • lib
      • <platform> (.lib files for the C++ interface, only on Windows)

    • samples
      • data (sample models, sample code, images)

      • exchange (sample applications for HOOPS Exchange)

      • publish (sample applications for HOOPS Publish)

Support, Consultancy, and Training

Licensees of HOOPS Publish enjoy a high-level of responsive support both from the core team located in Lyon, France, and from the local teams based in each major territory worldwide.

If you require help getting started, in the first instance please contact your Consulting Engineer or Account Manager, who will direct you to the appropriate support channels.

Documentation Locations

The HOOPS Publish help files are available…

  • …online at the HOOPS Developer Zone (http://docs.techsoft3d.com/publish/latest/index.html). Note this area is password protected - please contact your Consulting Engineer or Account Manager if you do not have a password.

  • …in the HOOPS Publish installation in the documentation directory.

The online documents provide a free-form text search. To search the documentation in the download package we recommend using a standard free-form text search such as grep, Windows Search, or Visual Studio’s “Find in Files”.

API Conventions

The reference manual contains a description of API conventions. Although the HOOPS Publish API is relatively simple, understanding these conventions is helpful these sections are worth reviewing early in the evaluation process. Additionally, the HOOPS Publish modules reference provides a useful enumeration of the API functionality. This can also be found at the link below:


Fonts and Resources

The function 3DPDFTextCreateEx can be used to embed fonts directly into the PDF and the ./bin/resource directory contains relevant font definitions.

./bin/resource/Font contains the Adobe MyriadCADOpenType 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.

Using HOOPS Publish with HOOPS Exchange

If you are already a user of HOOPS Exchange, or plan to evaluate HOOPS Publish along with HOOPS Exchange, please be aware that the two libraries share some technology. For this reason, HOOPS Publish and HOOPS Exchange are bundled in the same package. The installer allows you to install either or both SDKs. Please note that a joint license code is required to use HOOPS Exchange and HOOPS Publish together. Your license code is generated based on your Tech Soft 3D customer account details.

The installer places both HOOPS Exchange and HOOPS Publish in the same directory. Some libraries are shared between Publish and Exchange, and the two products share the same bin directory. The Distributing Your Application page lists which libraries are necessary for Publish. The Exchange version can be found here.

Note that when a license for one product stops, that license will also stop for the other product. Therefore, care must be taken if you are a licensed user of one product and are evaluating the other, or if you have concurrent evaluations running that end on different dates. Once an evaluation license has expired you may need to revert to the original license for the licensed product. We advise you to always keep a secure copy of any licenses you generate along with the included products and termination dates.

Using HOOPS Publish with HOOPS Visualize

If you are an existing HOOPS Visualize user you can export directly to HOOPS Publish using the MVO HIO Module, “hio_publish”. This allows creation of PDF files from HOOPS Visualize scenes directly or via templates. PRC binaries can also be created that can then be inserted into PDF documents using HOOPS Publish.

For more information, please see the HOOPS Visualize documentation.

The Hello World Example

The “HelloWorld” example is found in ./samples/publish/publishsource/HelloWorld. It creates a new PDF document and inserts a STEP file with a 3D representation of the text “hello world” into it.


The PDF, sample_HelloWorld.pdf, is placed in ./samples/publish/publishgallery. Note that the following description omits starting up and shutting down HOOPS Publish, which is described in the HOOPS Publish Programming guide.

Click here for more detailed information on this sample.