Developer Tips & Tricks - Optimizing Assembly Translation with 3D InterOp

By Stefanie Kenny, Technical Account Manager

Question: How can 3D InterOp translate assemblies faster?
Answer: Extract the product structure first, then translate parts according to your application needs, e.g. in parallel using multiple processors.

3D InterOp interface supports this workflow, and Spatial recommends it, yet - only a few 3D InterOp customers have implemented it.

Why Extract Product Structure:

  • By extracting product structure, but not translating the full assembly, your application obtains the list of all the assembly’s parts, which can be translated separately and flexibly. Part translation is the most resource intensive step of assembly translation; separating these steps rather than running them sequentially (3D InterOp’s default mode), allows the application to configure them in the most optimal way for your application.

Flexible Part Translation Examples:

  • Interactive part loading – The user views the product structure and selects a single part to load. The part of interest is loaded and translation is avoided for the remaining parts.
  • Multi-process backend part translation – Parts can be translated in parallel using multiple processes. MPI (Message Passing Interface), a multi-processing standard supported on most platforms, makes parallelizing 3D InterOp part translations simple.
  • Real-time rendering as the full assembly is translated – Parts can be rendered in the interface as they load.

Final Tips on Extracting Product Structure

  • When using 3D InterOp for ACIS, extract into XMLEBOM, then parse the output XML file. See user documentation enhancements coming in R22SP1 for an improved explanation of the XMLEBOM format. (See SPAIDocumentAssemblyInfo class or SPAIConvertor with the options Representation=”Assembly” and EBOM.ImportParts=false)
  • When using 3D InterOp for CGM, the product structure has already been extracted and is accessible directly through the user API.

Assembly Translation Overview



Return to Summer 2011 articles

Twitter Facebook LinkedIn YouTube RSS