< Home

< Reference Manual

< Supported File Formats

PROGRAMMING GUIDE

Contents

Programming with Exchange

Working with the Exchange API

Parsing a PRC File

Creating a PRC file that uses boundary representation

Creating a tessellation entity for representing faceted objects

Programming with HOOPS Exchange

The HOOPS Exchange product family allows applications to read and write 3D data to and from from popular CAD formats. This chapter explains how to integrate Exchange into a new or existing application.

Implementing Exchange in an application is a very straight forward process. After initializing Exchange, you set options to control what and how the data is read, then call an API to read the CAD data file into a PRC data structure. PRC data is a highly-compressed 3D representation that can be used to store precise B-Rep, tesselated visualization data, product structure, PMI and metadata. The PRC format is specified in the PRC Format Specification.

Once the data has been converted to PRC, an application can parse the PRC data and convert it to the applications preferred data format. If you use a kernel modeler like ACIS or Parasolid, it is a relatively simple task to convert the high precision PRC data to the SAT or X_T format. Likewise, your application can access the visualization, PMI, and metadata contained in the PRC data.

1.1.a.png
[figure 1.1.a] Exchange architecture

For exporting data, the inverse process is followed. You create a PRC data structure and then populate it with your 3D data. You then set options to control what and how the data is written, and then call an API to write the PRC structure into a 3D data file.

This process is explained in more detail in the following sections of this document:

Topic Description
Working with the Exchange API

Provides general information about the Exchange API, including versioning and build setup

Parsing a PRC file

Explains how to parse the contents of a PRC file to retrieve the data that it contains

Creating a PRC file that uses boundary representation

Explains how to create a PRC file that represents hard-coded graphic objects, in this case a cylinder and a curve

Creating a tessellation entity for representing faceted objects

Explains how to create a tessellation entity for representing faceted objects