Skip to content

--:-- IST

Case studyAMG Dynamics · Jul 2026 to now

From a production CAD file to a render ready ring

I built JewelPrep, a Rhino plugin that turns a manufacturer's production file into a render ready model. On a real production ring the full run takes about 35 seconds. By hand the job takes hours.

for the full run on one production ring
about 35 seconds
mean distance from the first manufacturer's own render file
0.021 mm
JewelPrepa production file, made render ready

Fact sheet

Sorts a ring's production file into metal, prongs, stones, supports and cutters, shows the designer a dry run, then cleans the metal and saves a separate render file the way each manufacturer's profile asks.

Client
AMG Dynamics, India
Role
Built it
When
Jul 2026 to now
Who else
The test files came from two manufacturers, unnamed here.
Stack
  • Rhino 8
  • Python
  • RhinoCommon
  • Cython

The problem

A ring's production file is built for the workshop, and it carries parts a render doesn't need. On the first manufacturer's file I worked from, the metal was 67 separate solids, there were 26 prongs on their own layer, 6 support rods and 39 hidden cutters for the stone seats.

That manufacturer's render file needed one clean metal body with the prongs merged in and the construction parts gone. A designer does that by hand, ring by ring, and it takes hours.

Constraints

  • It runs inside Rhino, where the files already open.
  • Files come from different manufacturers and different CAD packages, and they don't follow the same rules.
  • It must never delete a real part of the ring by mistake.
  • The output has to match what each manufacturer's own renderer expects.

Decisions

  1. Chose
    Keep anything that only looks like a support as metal unless the designer confirms it
    Over
    Deleting every shape guess
    Because
    on the first manufacturer's production file those shapes were the connector between head and shank, and its own render file keeps them
  2. Chose
    A profile per manufacturer
    Over
    One output style for everyone
    Because
    the first manufacturer's render files turned out to be triangle meshes, so its profile smooths and then triangulates, while another profile keeps the quad output
  3. Chose
    Merging the metal is a switch, never a fixed stage
    Over
    Always merging into one mesh
    Because
    the second manufacturer's render files weren't consistent: most were one merged mesh and the rest were loose pieces
  4. Chose
    Reuse the file's own materials
    Over
    Replacing them
    Because
    the second manufacturer's renderer binds materials by name, so a renamed material breaks the file
  5. Chose
    A dry run that classifies and selects before anything is deleted
    Over
    Deleting in one pass
    Because
    deleting by layer name can destroy a real part of the ring, so the designer checks the selection before anything is gone

How it works

JewelPrep sorts every object in the file into metal, prongs, stones, supports and cutters. Then it drops the supports and cutters, scales the prongs, unites the metal into one body when the manufacturer's profile asks for it, remeshes and smooths it, and saves a separate render file without its own working layers.

Release builds are compiled, every run writes its own log, and beta builds expire. An optional AI advisor runs on the designer's own key, which lives in their own settings and never in a ring file.

Drawing

Sorted first, then cleaned

Production filefrom themanufacturerClassifymetal, prongs,stones,supports,cuttersDry runthe designersees what goesClean and uniteone metal body,where theprofile asksManufacturerprofilemesh style,merge switch,materialsRender filesavedseparatelyconfirmed
  1. Production file

    from the manufacturer

    • leads to Classify
  2. Classify

    metal, prongs, stones, supports, cutters

    • leads to Dry run
  3. Dry run

    the designer sees what goes

    • leads to Clean and uniteconfirmed
  4. Manufacturer profile

    mesh style, merge switch, materials

    • leads to Clean and unite
  5. Clean and unite

    one metal body, where the profile asks

    • leads to Render file
  6. Render file

    saved separately

How JewelPrep turns a production file into a render file. No manufacturer's file is shown.

What the second manufacturer taught it

Everything I first built came from the first manufacturer's files. Then the second manufacturer sent 7 files from a different CAD package. They overturned four assumptions: merging isn't universal, their files have no cutters or supports, their stones stay as blocks, and their renderer binds materials by name. In 5 of their render files the metal was one merged mesh, and in the rest it was loose pieces.

Results

  • Checked against 99 hand labelled parts of that file, it sorted every metal piece, prong and support correctly, with no false positives.
  • With the first manufacturer's profile, the output sits a mean 0.021 mm from that manufacturer's own render file.
  • A designer beta went out in October 2026.

PermissionAMG Dynamics' tool, shown with its approval. No manufacturer's file is shown.