Developer Tips & Tricks: Refresher Course on 3D InterOp Samples - A Wealth of Information

Developer Tips & Tricks: Refresher Course on 3D InterOp Samples - A Wealth of Information

By: Stefanie Kenny, Technical Account Manager

Have you looked at the 3D InterOp sample applications lately? Your 3D InterOp package includes a number of samples which demonstrate various ways of getting information out of data files, from performing simple translations to traversing and querying unusual geomtols. Whether you're new to 3D InterOp or an experienced user, reviewing our samples periodically can help you optimize your workflow and get exactly the type of data you want. This article will summarize all our various samples and how they can be useful to you.

What is a sample?

Let's review the basics first. Each sample is a simple command line application demonstrating one or two concepts. Each one is comprised of:

  • One or two .cpp files
  • A build project or makefile

Building is easy - the only thing you must change in the project is to cut and paste your Application Key into the unlock_license.cpp file (Windows only). The online documentation contains complete instructions for building each sample; links to the online documentation are provided at the end of this article.

What is the purpose of a sample?

Each 3D InterOp sample is designed to meet one or more of the following objectives:

  • Demonstrate Basic Concepts - for instance, how to implement a progress callback function
  • Demonstrate Advanced Concepts - for instance, how to get PMI once it is translated into SAT
  • Provide Utility for Translation - for instance, translate a single file with specific option settings

Basically, samples provide a means for you to learn about 3D InterOp concepts interactively using your debugger and some are useful as utilities, even if you never look at a single line of code.

Exploring the Samples

Basic Translation Concepts

These samples demonstrate the simplest concepts in the interface, such as how to choose which representation you wish to translate or how to set the destination unit. The Options sample is by far our most heavily used sample, even by us, and is often incorporated by customers directly into their application.
Assembly XML, LogFile, Options, ProgressCallback, Representation, Simple, and Unit

Querying Source Document

These samples demonstrate how to query a source document for information. This can save time by extracting only the data you want and also help you choose how to perform the full translation, e.g. kick off a multi-process translation for an assembly.
AssemblyInfo, BrepInfo, DocumentInfo, and MultiModelDocumentInfo

In Memory Translation Concepts

The following samples demonstrate how to import a file directly into ACIS (or Parasolid) without saving it. They also demonstrate the reverse workflow. While these samples don't have much utility as console applications, they do demonstrate essential and sometimes tricky concepts.
AcisAsmExport, AcisAsmImport, AcisExport, AcisImport, ParasolidExport, ParasolidImport

Manufacturing Information

Did you know you can put a geomtol on a dimension? PMI has many, many possible configurations and semantic data which you will want to understand. These samples demonstrate how to process all the various cases, including PMI with multiple owners, capture sets, driving dimensions, and other tricky little cases.
AcisMiImport, AcisAsmMiImport, AcisHoldImport, and AcisMiXML

Last but not Least . . .

The new sample, AcisAsmFlatten demonstrates how to use recently added ACIS functionality for flattening an ACIS assembly model into an ENTITY_LIST, including flattening assembly level PMI.

Please take advantage of these, and see our documentation for further information:

Comprehensive list of 3D InterOp samples
InterOp Portal

Back to Spring 2012 Issue

Featured Video


Build IT

eBooks & Whitepapers

eBooks & Whitepapers

Download technical eBooks and whitepapers on topics including industry challenges and product solutions.

Spatial Facebook Spatial Twitter Spatial LinkedIn Spatial YouTube Spatial Blog RSS


A quarterly e-Newsletter highlighting industry trends, and includes articles from Spatial developers. Sign up to receive The Spatial Blend.