Jointly Convert a file

Example: converting an industrial forklift CAD assembly to URDF

This is an internal accuracy-testing example, not a customer case study — one of several real assemblies used to stress-test Jointly's joint inference during development.

Example · ~3 min read

A forklift is a useful accuracy benchmark because it packs several distinct joint types and a genuinely tricky structural case into one assembly:

What's in the assembly

The structural problem: reparenting

Root/base selection sometimes needs to change which part is treated as a given joint's parent in the kinematic tree — for example, choosing the chassis rather than a wheel as the base link. When that reparenting happens, a joint's type classification has to be re-derived for its new parent-child relationship, not carried over from before the reparent. In this assembly, the hydraulic mount initially kept a stale classification from its original parent after the base link was reselected, which read as a bogus prismatic joint along the wrong axis instead of the real revolute pivot. The fix was making joint classification re-run after any reparenting step, not just at initial graph construction.

This is exactly the kind of static-geometry problem B-Rep precision helps with, but doesn't fully solve — the geometry tells you the axis; getting the parent-child structure right is a separate, and in cases like this, harder problem.

Skip the manual work

Jointly does everything on this page automatically: drop in your CAD (STEP, mesh, SolidWorks or Onshape), and it infers joints, axes, inertia and collision, then exports a simulation-ready URDF, SDF, MJCF or USD. The first conversions are free.

Try Jointly free →

The takeaway

Multi-joint-type assemblies with a non-trivial root choice are where automated joint inference earns its keep — and where it's most likely to go wrong if the pipeline doesn't re-check its own assumptions after structural changes like reparenting. See the full STEP-to-URDF guide for how axis recovery works in general.