This section provides a brief overview of HOOPS Publish in the form of an FAQ together with a description and details of the core PRC format at the heart of the 3D PDF standard. HOOPS Publish is designed as an easy-to-implement publishing tool for generating rich 3D PDF documentation from your application. The ease of implementation is reflected in the compactness of the documentation required.
What is HOOPS Publish?
What is HOOPS Publish?
HOOPS Publish is an SDK which enables developers to easily create 3D PDFs from their application. It is based on Adobe’s PDF Library SDK and Tech Soft 3D’s HOOPS Exchange and HOOPS Visualize products. With HOOPS Publish developers provide 3D content and an optional PDF template which the toolkit will use to create a 3D PDF document.
HOOPS Publish provides functionality for creating a 3D PDF from a supplied 3D file as well as API access to create or modify 3D data directly. Developers can ask the SDK to create the PDF file directly or use a supplied PDF template. In both cases they can then add an unlimited number of images and text strings to the PDF document.
HOOPS Publish will export data into any of Acrobat’s supported 3D formats (U3D, PRC and PDF). If PDF is chosen, the developer can use the default PDF document or provide a customized PDF template.
What basic objects can I create in the PDF document?
Through the HOOPS Publish API you can create a PDF document, add a 3D window to it and then add an unlimited number of text strings and images to the document. You have full control over the position, size and formatting of these elements. Typically users will attach 3D data to the 3D window. The 3D data can be either defined by a file or created directly via an API. The toolkit will convert the 3D data into one of the 3D formats supported by Acrobat. This is user controlled and can be either PRC or U3D data.
When should I use a PDF Template?
PDF Templates should be used if you want to create documents which have interactive elements or if your document has sophisticated formatting needs. An interactive document contains objects (buttons or otherwise) which when manipulated (e.g. clicked) can cause behaviors to occur in other parts of the document. For example, if your document needs to have a button which causes an object to highlight in the 3D window then you would need to use a PDF Template. Through templates you can create an unlimited number of text boxes which you can populate. These text boxes can have advanced font styling characteristics which may also be desirable to users.
Can I create my own PDF templates for use with HOOPS Publish?
Yes. You are free to create your own PDF templates and use them with HOOPS Publish. You can also take any of the templates or images included on the HOOPS Publish media and use them as a basis for your own template.
What tools are available for creating PDF templates?
Acrobat Standard and Acrobat Pro both allow you to create PDF templates. You can either start from a blank page or use an existing PDF document. You then turn the document into a Form via the Acrobat Forms menu. Once you’ve created a form you can add as many text fields and buttons to the document as you like. You should then save this file out as a PDF document and use it as your PDF template. The form objects you created will then be accessible to you via the HOOPS Publish API so that you can populate them with your data.
How do I define my 3D data?
Your 3D data can be defined in any number of file formats or created directly via an API. When the data is embedded in the PDF document you have a choice of saving it as either U3D or PRC data. PRC is Adobe’s preferred 3D format and is a more engineering focused format. A more detailed review of the PRC file format is contained below.
What image generation capabilities are available in the product?
HOOPS Publish allows developers to create image snapshots of the 3D model. These images can be from user defined positions and of a user defined width and height. This allows developers to create poster images for the 3D window and to also use these images for other reasons in other portions of the document.
Does HOOPS Publish support animations in the PDF document?
What tools are available for reducing the PDF file size?
The PDF document has file wide compression implemented via the PDF Library SDK. Additionally the PRC file format includes advanced compression to significantly reduce the size of the 3D data. See the PRC File format section below for further information on this.
Does HOOPS Publish support Product Manufacturing Information?
PMI is fully supported by HOOPS Publish. The STEP reader includes full PMI support and so if the user provides a STEP file with PMI that data will be fully accessed and presented in the 3D window. Developers can also use the direct 3DX API to create the PMI data directly.
What security is available for my documents?
Developers can password-secure their PDF documents. This is based on the standard password security mechanism available in Acrobat and so developers will be presented with a very familiar interface for unlocking the document.
What additional PDF document capabilities are available with HOOPS Publish?
The toolkit uses Adobe PDF library to create the PDF data and so the security and compression provided is similar to that available in the Acrobat product. Developers can also attach files to the PDF document. This could be used for example for a developer to include the original CAD data in the PDF document.
What is the PRC File Format?
What is the PRC File Format?
PRC format stands for Product Representation Compact Format. PRC is a highly accurate and highly compressed format for describing 3D CAD models including assemblies and product manufacturing information (PMI). A PRC file is a sequential binary file, written in a portable way.
The PRC format is an openly published format subject to ISO certification ISO/AWI 14739-1.
PRC supports PDF-based documentation workflows and can also be used as an independent 3D visualization file format. By using PRC, documents can be created that are interoperable with Computer Aided Manufacturing (CAM) and Computer Aided Engineering (CAE) applications. PRC supports documentation requirements for design reviews as well as distribution of detailed design documentation to supply chains. In addition, its use can help support regulatory mandates which require the use of open standards.
Specifically, PRC supports the following data forms:
- Allows storage of large CAD files in a highly compressible form that is a fraction of the original size. The complete product structure of the parts defined by the CAD system is contained in a PRC file.
- Can represent Product Manufacturing Information (PMI), which includes Geometric Dimensioning and Tolerancing (GD&T) and Functional Tolerancing and Annotation (FT&A).
- Allows geometry use in CAD, CAM, and CAE applications. The geometry can be stored in either a tessellated or precise form.
PRC is currently used in 3D documentation workflows for several large industries, including aerospace, automotive, and architecture. The manufacturing industry has come to rely on PDF for the exchange of manufacturing documentation, distribution of service and parts manuals, and capture and submission of regulatory documentation.
The release of PRC to ISO has accelerated innovation around PRC, driving even broader adoption of PRC, and is helping to ensure that PRC evolves to meet the 3D documentation needs of product manufacturing and related industries.
While there are a number of other 3D file formats, PRC integrates well with document formats such as PDF and XML.
Specifically, PRC supports:
1. Structural and Geometrical Representation
PRC has direct support for a wide variety of high order primitives that correspond to those used by CAD applications. This permits more of the original design intent of the file to be retained. Compared to other 3D file formats, PRC retains more information about the product structure and relationships defined in the original design application. Other 3D formats take a more general or display-oriented approach to product structure. This may make it harder or impossible to reconstruct aspects of the original design relationships needed to support “manufacturing from a file” or maintenance workflows.
2. File Size
PRC captures meshes and compresses them far more efficiently than native CAD formats. Files containing both precise geometry and tessellated geometry can be significantly smaller when converted to PRC. This results in great benefits when transporting and storing the data, particularly over limited bandwidth or to wider groups of reviewers and consumers of this data. Even large 3D models can be easily shared over email.
3. Product Manufacturing Information
PRC can represent Product Manufacturing Information (PMI), which is used to primarily communicate the full design intent to suppliers and their shop floors. Without PMI embedded in the file format, OEMs are required to send many 2D drawings to their suppliers to communicate the full design intent. The use of PRC can reduce the need to create 2D drawings from 3D models for distribution to the supply chain.
What is the ISO Certification Process for PRC?
In December 2008 Adobe Systems released the PRC format to the AIIM (http://www.aiim.org).
AIIM is an ANSI (American National Standards Institute) accredited standards development organization. AIIM also holds the Secretariat for the ISO (International Standards Organization) committee focused on information management compliance issues, TC 171. TC 171 is the ISO committee that developed the existing ISO standards relating to Adobe PDF/A and PDF/E. Accordingly, AIIM is an authority that ANSI uses to submit proposed standards to ISO.
In June 2010 Adobe transitioned future development of the PRC standard to Tech Soft 3D, who is committed to working together with AIIM to develop the PRC specification as an open ISO-certified standard. The normal time frames for the development of an ISO standard range from 24 to 36 months.
What compression is available in PRC?
Files stored in the PRC format can be highly compressed. A compressed PRC file written by HOOPS Exchange can be typically 100 times smaller than the original proprietary CAD file and is typically three times smaller than U3D, a legacy 3D format still used in PDF.
Regular compression refers to directly representing the CAD data without loss or transformation from the original CAD system. Regular compression includes:
- Modeler-specific representations of curves and surfaces that are often significantly more compressed than a generalized NURBS representation. Preserving them leads to a file that is both smaller and contains more accurate data.
- The PRC format has the concept of current values for certain state information. This means that this state information is not unnecessarily duplicated within the file.
- All sections of a PRC file except header sections are individually compressed with a Flate method. The Flate method is based on public-domain deflate compression, which is a variable-length Lempel-Ziv adaptive compression method cascaded with adaptive Huffman coding. This form of compression is considered to be “lossless”. It occurs systematically whatever the actual content of the PRC file, and even if it also contains compressed parametric or tessellated geometry.
Regular compression refers to directly representing the CAD data without loss or transformation from the original CAD system. High compression includes:
- Both parametric and tessellated geometry can be stored in a compressed form in the PRC file to a specified physical tolerance relative to the original shape. This tolerance is typically 0.001mm for parametric data and 0.01mm for tessellated data.
- For NURBS data knot vectors, multiplicities, control points and weights are all stored in a compressed format. NURBS can also be approximated using simpler canonical surface forms such as planes and cylinders. For tessellated data triangle meshes, vertex coordinates, normals and textures are all compressed.
- A variety of lossy techniques are used including variable coordinate basis, elimination of redundant coordinates and storage of floating point numbers in reduced numbers of bits depending on required precision.