Skip to content
For software developers · 3D InterOp SDK

Convert OBJ to XCGM in your application

3D InterOp is a CAD interoperability SDK that lets your software read OBJ files and write XCGM, writing the OBJ facets as faceted geometry, since OBJ stores triangles rather than solids.

Spatial does not offer an online converter or a desktop conversion app. 3D InterOp is a component that software vendors embed in their own products.

  • Reads OBJ · Writes XCGM
  • Triangle mesh → faceted B-Rep
  • C++ / C# APIs
part.objOBJ · polygon mesh
Your application
3D InterOp SDK
OBJ readerHealingXCGM writer
part.xcgmXCGM · exact B-Rep

OBJ to XCGM at a glance

OBJ stores triangles; XCGM is an exact-geometry format. The mesh is written as faceted geometry: 3D InterOp doesn’t rebuild smooth surfaces from triangles.

OBJ (source)XCGM (target)
Full nameWavefront OBJCGM native file
Standard / ownerOpen formatDassault Systèmes / Spatial (CGM Modeler)
File extensions.obj.xcgm
GeometryPolygon meshExact B-Rep
Assemblies / structureNo assembly hierarchyYes
PMINoneSemantic (read)
3D InterOp supportRead and writeRead and write

What's preserved, what changes

Here is what your application can expect to carry across from OBJ to XCGM.

  • Changes
    Faceted geometry
    OBJ stores triangles, so the XCGM file holds faceted bodies, not solids. 3D InterOp doesn’t rebuild exact B-Rep from a mesh.

Why software vendors add OBJ to XCGM conversion

Hand models to kernel-based applications

Many CAD, CAM and CAE applications are built on the XCGM kernel. Writing XCGM gives them exact geometry they can load without another translation step.

Downstream modeling and analysis

An exact XCGM B-Rep can still be edited, meshed or machined by downstream tools, which a tessellated export would not allow.

Exchange within one ecosystem

Partners whose tools share the XCGM kernel often prefer to exchange XCGM files directly.

Things to check before you ship

  • Written XCGM versions: R2012 to 2025 1.0.
  • PMI and miscellaneous data aren’t written to XCGM.
  • Supported OBJ input: any OBJ version.
  • Validate a sample of translated files in the target system your users actually work with.

Working with Spatial was a real milestone for us: Thanks to the powerful 3DInterOp library, we were able to successfully bring our complex CAD-based solutions to the cloud while remaining flexible to meet individual customer requirements. For us, Spatial is not just a technology partner, but a true enabler of our product strategy.

Dr. Arno Michelis, Founder, Simus Systems

Read the Case Study

About the formats

  • Source format

    What is an OBJ (.obj) file?

    OBJ is a simple, widely supported text format for polygon meshes, created by Wavefront. It describes vertices, faces and texture coordinates, with materials in a separate .mtl file.

  • Target format

    What is an XCGM (.xcgm) file?

    XCGM is the native file format of the CGM geometric kernel, used by CGM Modeler and Dassault Systèmes applications. It stores exact B-Rep geometry.

Frequently asked questions

No. OBJ stores triangles, and 3D InterOp writes them to XCGM as faceted geometry. It doesn’t rebuild exact B-Rep from a mesh.

No. PMI and miscellaneous data aren’t written to XCGM.

Yes. 3D InterOp reads the visual material properties of OBJ files on import.

3D InterOp reads any OBJ version, as visualization data.

3D InterOp writes R2012 to 2025 1.0.

Yes. 3D InterOp reads and writes both formats, so XCGM to OBJ is supported too.

  • Building software that needs to convert OBJ to XCGM?

    3D InterOp is an SDK that lets your application read OBJ and write XCGM alongside 30+ CAD and BIM formats.