Appearance
xConvert CLI — Overview
xConvert CLI (xconvert) is the standalone conversion and optimization engine of the XViewr platform, packaged as a self-contained command-line tool.
It handles the full pipeline from raw CAD files to browser-ready 3D assets: format conversion, geometry decimation with multiple LOD levels, Draco compression, and spatial chunking for progressive streaming in the XViewr viewer.
What It Does
| Stage | What happens |
|---|---|
| Convert | Parses STEP, IGES, FBX, OBJ, GLB, STL, PLY, point clouds → GLB |
| Decimate | Generates LOD0–LOD3 using adaptive RMS or Hausdorff-bounded quality |
| Compress | Draco-compresses geometry via KHR_draco_mesh_compression |
| Chunk | Spatially partitions large models into octree chunks for streaming |
Deployment Models
On-premises (recommended for enterprise) The CLI ships as a self-contained binary (Windows MSI or Linux tar.gz). No Python, no cloud dependency, no network access required after setup. All OCCT libraries and native binaries are bundled.
Server-side (XViewr platform)x-convert — the XViewr job server — spawns xconvert as a subprocess for file uploads coming through the browser UI.
CI / automation Use --json flag to get newline-delimited JSON progress events on stdout, suitable for integration into any pipeline.
Supported Input Formats
| Extension | Format |
|---|---|
.step, .stp | STEP (OpenCASCADE 7.9) |
.iges, .igs | IGES (OpenCASCADE 7.9) |
.fbx | FBX (via FBX2glTF) |
.glb, .gltf | glTF 2.0 |
.obj | Wavefront OBJ |
.stl | STL |
.ply | PLY |
.e57, .las, .laz, .xyz | Point cloud |
Supported Output Formats
glb (default), fbx, obj, stl