Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Finding similar parts

Before you model a new part, check whether one like it already exists. TeamCraft compares the shape of 3D models – no AI, no training data, the same answer every time – and lists parts of similar shape and size with a reason you can check.

Where you see it

  • Revision page → Similar parts (below Files): up to six parts with a score, the matching file and a one-line explanation, e.g. extents 118 × 40 × 8 vs 120 × 40 × 8, shape distribution 94 % similar. On a brand-new part (only revision A, in work) the section is called Similar existing parts: if one fits, reuse it instead of creating a new item. It is a card on the page, not a pop-up: it appears whenever the revision has a file it can compare, and stays hidden otherwise. Right after Items → New item with a STEP or mesh file the card first says Comparing the shape … reload the page in a moment – the page does not refresh itself, reload it once the comparison is done.
  • Desktop app: the revision overview has a Compare the shape in the browser button that opens this card in the web UI; the app itself shows no list.
  • REST API: GET /api/v1/items/{number}/revisions/{code}/similar (REST API).
  • AI assistants: the MCP tool find_similar_parts (MCP server); find_duplicate_files is its sibling for byte-identical copies.

The comparison needs a 3D model with a preview: STEP, a mesh (STL, OBJ, PLY, OFF, 3MF, AMF, glTF/GLB, 3DS), an NX part (.prt with its JT lightweight representation), a CATIA V5 part (.CATPart with its visualisation data) or a Fusion design (.f3d with its display scene). Other native CAD files are compared through their STEP export – attach one. NX assemblies are not compared (they hold no shape of their own), and neither are point clouds. Simulation result files (VTK, VTU, VTP, CalculiX FRD) have a 3D preview too and are currently compared like parts.

How it works

When a 3D file is attached or checked in (or first shown), the preview process computes a small shape signature of its mesh, once per file content:

Part of the signatureWhat it is
Principal extentsedge lengths of the tightest box around the part, largest first – independent of how the part lies in the file
Surface area, volumethe volume only counts when the mesh is watertight; B-rep exports often are not, then it is left out
Shape distribution (D2)histogram of the distances between 32 768 random point pairs on the surface, relative to the box diagonal – a fingerprint of the form that ignores position, rotation and size
Trianglesthe size of the mesh

Two parts are compared with

  • shape = 1 − ½ · Σ |difference of the D2 histograms| (100 % = same form),
  • size = exp(−2 · mean |ln(extent ratio)|) over the three extents (100 % = same size; 5 % larger in every direction gives about 90 %, twice the size about 25 %),
  • score = shape × size.

Hits below 50 % are not shown; each item appears once (its best file), and only its latest revision counts. Units are the file’s model units (usually millimetres); a part exported in inches is therefore “smaller”.

Ignore scale (ignore_scale=true in the API and the MCP tool) compares the proportions (middle and smallest extent relative to the largest) instead of the extents, so scaled variants – M6 and M8 versions of a part – score like copies.

Everyone who can sign in sees the hits, exactly like the item search: items of a restricted project group appear only for its members and administrators – for everybody else they are neither shown nor counted, even with identical file content.

Limits

The signature looks at the outer form. Parts that differ only in small features (a hole more, a different chamfer) score high – that is the point of the search, but it is no proof that they are interchangeable. Mirror images score as the same shape. Very different tessellations of the same part (a coarse STL vs a fine STEP) agree on extents and differ a little in the shape distribution.

A STEP file with a partial preview (some faces use geometry the kernel cannot tessellate, see Files) gets no signature: area, volume and shape distribution of a model with holes would compare it wrongly. It is neither searched from nor found as a hit; the similar-parts panel says why.

The search is fast for large vaults: an indexed prefilter on the extents (within a factor of three) or proportions keeps at most 2000 files, which are scored in memory.

Files stored before this feature get their signature in the background when their revision page or 3D view is first opened (the page then says reload in a moment), or all at once with teamcraft vault signatures (see Operations; --convert also converts files that were never previewed).