Everything K-culture — comebacks to K-beauty, straight to your inboxGet it in your inbox›
CADENA: Stepwise CAD Reverse Engineering
arXiv:2608.007992026-07-31
An AI that reverse-engineers CAD models one build step at a time, checking its work after every move
CADENA turns a 3D mesh (a raw triangle-based shape with no editable structure) back into an editable CAD program, but instead of emitting the whole program in one shot like prior systems, it adds one operation at a time and compares the target shape against what it has built so far before choosing the next step. It does this by feeding a vision-language model a single image that overlays the target and current build from eight viewpoints plus a hint point, predicting and executing one operation per round. The authors also introduce CADENA-Bench, a benchmark of real mechanical parts, and GMS, a surface-matching metric, and report CADENA outperforming prior methods on DeepCAD, Fusion360, MCB, CADENA-Bench, and BenchCAD.
METAL MEDIA explanatory visual
CADENA's step-by-step CAD reconstruction loop
Evidence statusMeasured results reported
Overlay comparison imageTarget mesh (green) and current partial build (red) are rendered from eight viewpoints into one overlay image, plus a hint point marking where to edit next
Vision-language model predicts next operationThe model looks at this image and hint point and predicts the next single-line CAD command (e.g. extrude, revolve) to append
Execute and updateThe predicted operation is executed to produce a new partial build, and a fresh comparison image is rendered against the target
Repeat and select best stepThis loop repeats up to 20 times; the IoU of every intermediate build against the target is tracked, and the step with the highest IoU is returned as the final program
Training: supervised fine-tuning then RLThe model first learns from a rule-based generator's programs and intermediate shapes, then is refined with reinforcement learning rewarded by the IoU of executed geometry
An explanatory diagram made by METAL MEDIA, not a figure supplied by the paper's authors.
What they did
Most prior AI systems generate the entire CAD program (the sequence of commands that builds a part) in a single pass without ever checking the intermediate geometry; CADENA instead adds one operation at a time, executes it, and inspects the result before deciding the next step, the way a human engineer would.
At each step, the model renders the target mesh (green) and the current partial build (red) from eight viewpoints into a single overlay image, plus a hint point marking where to modify, and feeds this to an image-to-code vision-language model that predicts the next CAD operation.
Training first uses supervised fine-tuning on programs and intermediate shapes produced by a rule-based generator, then refines the model with online reinforcement learning where the reward is the IoU (volume overlap) between the executed partial build and the target mesh.
The authors built CADENA-Bench, a benchmark of 3,396 real mechanical parts grouped into six part families, and GMS, a new metric that checks whether surfaces match not just in position but also in orientation (normal direction).
At inference, because every partial build is executed and scored against the target, the system returns whichever step along the chain achieved the best IoU, so a bad late step never makes the final result worse.
Figure 1: CADENA overview. The target mesh (green channel) and the current partial prediction (red channel) are rendered into a single aligned multi-view image consisting of six orthographic views (with depth encoded as color intensity) and two isometric views. Predominantly green regions indicate missing geometry, while predominantly red regions indicate excess material. Given this image and a hint point specifying the region to modify, the image-to-code VLM predicts the next operation, which is appended to the program. The updated program is then executed, producing a new partial build, and the process repeats until the stopping criteria are met.
Table 1: CAD reverse engineering on external benchmarks. Median CD↓ (×103) at 8k and 30k sampled points, mean IoU↑ (%), GMS↑ (%), and IR↓ (invalid rate, %) on DeepCAD, Fusion360, and MCB. A prediction is invalid if it fails to build or is not watertight; invalid predictions are counted in IR and excluded from all means. All metrics are evaluated in the fixed normalized frame used for all methods; IoU is additionally restricted to parts with watertight ground truth.
DeepCAD
Fusion360
MCB
Method
CD8k↓
CD30k↓
IoU↑
GMS↑
IR↓
CD8k↓
CD30k↓
IoU↑
GMS↑
IR↓
CD8k↓
CD30k↓
IoU↑
GMS↑
IR↓
CAD-Recode
0.17
0.055
91.4
92.9
7.9
0.17
0.060
87.2
85.8
13.6
0.66
0.524
71.1
54.7
21.5
cadrille
0.17
0.059
89.7
94.8
0.3
0.17
0.066
84.8
86.8
0.8
0.85
0.720
66.2
55.0
1.5
CADReasoner
0.16
0.049
91.0
94.9
3.0
0.15
0.050
86.3
88.6
7.2
1.44
1.290
69.0
55.2
31.7
CADEvolve
0.16
0.050
92.4
95.3
0.9
0.16
0.056
88.1
88.2
2.7
0.63
0.500
72.9
58.3
9.2
CADFit†
0.18
0.052
91.4
89.8
27.5
0.17
0.054
88.2
84.6
25.6
0.48
0.365
75.8
60.1
29.7
CADENA-SFT
0.16
0.048
91.7
95.3
2.6
0.14
0.046
88.8
90.8
3.8
0.43
0.259
75.2
63.4
12.0
CADENA-RL
0.15
0.042
96.1
97.0
0.3
0.12
0.038
94.1
93.3
1.2
0.22
0.093
88.2
73.7
0.7
Figure 2: Stepwise reconstruction by CADENA. Each row follows one part from its first operation to the returned program. Columns are selected steps, annotated with the step index and the IoU of the build against the target at that point; the DSL line emitted at the step appears beneath each panel, and the rightmost column is the ground truth. The three parts are returned after 17, 4 and 16 operations. The model establishes bulk geometry first and adds detail later — teeth, holes and pockets appear only once a body exists to cut them from — and IoU rises along every row, since a prefix that lowers it is never the one selected.
Table 2: Per-category GMS↑ on CADENA-Bench (3396 mechanical parts, six part families). GMS is averaged over valid predictions (buildable and watertight), as in Table 1.
Shafts &
Gears &
Housings &
Flat &
Springs &
Tooling &
Method
bushings
bearings
frames
levers
fasteners
gauges
All
(762)
(749)
(359)
(464)
(1046)
(17)
(3396)
CAD-Recode
53.8
39.1
56.1
58.8
45.3
38.7
48.9
CADReasoner
55.6
46.9
56.4
69.7
43.4
38.5
52.9
cadrille
57.6
37.2
54.5
62.1
46.3
41.8
49.8
CADEvolve
59.6
41.3
59.4
66.4
47.9
44.7
52.9
CADFit†
60.8
61.3
48.5
66.2
42.3
23.1
54.8
CADENA-SFT
70.8
47.8
58.1
66.8
51.9
43.4
57.8
CADENA-RL
73.0
58.1
70.7
76.8
63.4
60.0
67.0
Figure 3: Qualitative comparison across methods. Each row is one input part, labelled with the dataset it comes from; each column is one method, with the target in the rightmost column. The GMS of that single reconstruction is printed beneath each panel. Grey panels mark predictions that failed to build, and predictions that build without being watertight are annotated as such; both count toward the invalid rate and are excluded from the means in Table 1. The failures are not spread evenly — they concentrate on the turned and patterned parts of MCB and CADENA-Bench, which is the same pattern the per-family results show.
Table 3: Vision2Code on BenchCAD. Voxel IoU↑ and invalid rate↓ (%). The comparison is not like-for-like and should not be read as a ranking; see the note below.
Model
Input
Graded by
Voxel IoU↑
IR↓
Frontier vision–language models
GPT-5.6 Sol (thinking)
image
vendor
0.706
—
GPT-5.6 Luna (thinking)
image
vendor
0.631
—
GPT-5.6 Terra (thinking)
image
vendor
0.623
—
GPT-5.5 (thinking)
image
vendor
0.444
—
Claude Mythos 5 (thinking)
image
vendor
0.384
—
Claude Opus 5 (thinking)
image
vendor
0.366
—
Gemini 3.1 Pro (thinking)
image
BenchCAD
0.355
18.5
Claude Opus 4.7 (thinking)
image
BenchCAD
0.279
3.5
Specialist CAD models
qwen3-2b-rl-iid
image
BenchCAD
0.752
1.1
CADEvolve
image
BenchCAD
0.750
7.3
CADENA-RL (ours)
mesh
ours
0.910
0.9
Figure 4: Inference-time ablations, all replayed from the stepwise records of the reported model. (a) Quality against the operation budget k: k=1 is a single-pass model, and the curve saturates around eight operations, so the budget of 20 used throughout is not a tuned quantity. (b) The gain is concentrated in the hardest quartile of each dataset — parts whose first operation scores worst — and is essentially zero for the easiest. (c) Per-part view on MCB: each point is a part, comparing the reconstruction after one operation with the selected prefix. Points above the diagonal are improved by stepping; the shaded region marks parts rescued from near-total failure.
Table 4: Comparison of the SFT and RL models under greedy decoding and sampling (T=1.0, E=12). IoU and GMS are means reported in percent, CD values are medians (computed with 8192 and 30000 sampled points), and IR is the fraction of invalid generations. Best values per dataset are in bold.
DeepCAD
Fusion360
MCB
Decoding
Model
IoU %↑
CD8k↓
CD30k↓
GMS %↑
IR %↓
IoU %↑
CD8k↓
CD30k↓
GMS %↑
IR %↓
IoU %↑
CD8k↓
CD30k↓
GMS %↑
IR %↓
Greedy
SFT
91.7
0.16
0.048
95.3
2.63
88.8
0.14
0.046
90.8
3.77
75.2
0.43
0.259
63.3
12.04
RL
96.1
0.15
0.042
97.0
0.35
94.1
0.12
0.038
93.3
1.22
88.3
0.22
0.093
73.7
0.74
Sampling
SFT
93.6
0.15
0.046
95.6
0.15
91.8
0.13
0.042
92.3
0.64
82.8
0.31
0.150
70.0
0.36
RL
96.6
0.15
0.042
97.4
0.07
95.2
0.12
0.036
94.2
0.23
89.5
0.22
0.089
75.1
0.06
Figure 5: Characteristic failures. Five parts on which CADENA fails, with the target above and the returned reconstruction below. They illustrate three of the four modes discussed in this section: countable features are approximated rather than counted, so the impeller and the radial fan keep the right body and the wrong blades; helical geometry outside the DSL’s vocabulary is replaced by the nearest available primitive, a thread standing in for a coil spring; and where no single canonical view resolves the shape, the reconstruction collapses to a rough envelope of it, as in the valve body and the bracket. None of these is a failure to emit valid CadQuery — every reconstruction shown builds and is watertight, and would be counted in the means of Table 1.
Table 5: CADENA against the DeepCAD figures reported by SOV-CAD. Their values are quoted from their Table II (the stronger of their two variants); ours are the CADENA-RL row of Table 1. The two are measured under different protocols — see the note below — so this is a comparison of published numbers, not a controlled one.
SOV-CAD
CADENA-RL
Median CD↓
0.38
0.15
IoU↑
0.84
0.961
IR↓
7.3%
0.3%
Table 6: Operations of the CADENA DSL. Surface form as emitted, grouped by what the operation does to the running solid. Bracketed arguments are optional and do occur in generated programs. Attested is the number of occurrences in the 994-program corpus; the operation marked ∗ does not appear there and was verified against programs generated fresh from the repository presets, and ✓ marks one that is attested in the corpus but whose occurrences we did not tally. The generator implements further operations that the CADENA corpus does not use; they are omitted.
Table 7: Comparison of reward functions across the deepcad-1000, fusion360-1000, and mcb-1000 datasets. All rows share the RL setup of Section 3 and differ only in the reward; decoding is greedy.
deepcad-1000
fusion360-1000
mcb_1000
Model
IoU↑
CD↓
GMS↑
IR↓
IoU↑
CD↓
GMS↑
IR↓
IoU↑
CD↓
GMS↑
IR↓
SFT
0.9190
0.1564
0.9549
0.0417
0.8795
0.1444
0.9062
0.0571
0.8465
0.1213
0.7713
0.1174
RL (IoU)
0.9620
0.1467
0.9737
0.0081
0.9317
0.1236
0.9349
0.0310
0.9143
0.0929
0.8310
0.0091
RL (MPR, 0.5/0.5)
0.9465
0.1495
0.9703
0.0020
0.9114
0.1312
0.9294
0.0060
0.9003
0.0941
0.8258
0.0070
RL (MPR, 0.9/0.1)
0.9546
0.1487
0.9694
0.0020
0.9296
0.1312
0.9289
0.0030
0.9241
0.0947
0.8247
0.0010
RL (IoU + KL)
0.9650
0.1476
0.9743
0.0030
0.9377
0.1259
0.9387
0.0100
0.9340
0.0936
0.8339
0.0000
Table 8: Full-test-split evaluation for the RL (IoU) / RL (IoU + KL) pair — same checkpoints as in Table 7. RL (MPR, 0.9/0.1) was not evaluated on the full splits.
deepcad_test_mesh
fusion360_test_mesh
mcb_test_mesh
Model
IoU↑
CD8k↓
GMS↑
IR↓
IoU↑
CD8k↓
GMS↑
IR↓
IoU↑
CD8k↓
GMS↑
IR↓
SFT
0.9167
0.1581
0.9528
0.0263
0.8880
0.1422
0.9079
0.0377
0.7524
0.4316
0.6339
0.1204
RL (IoU)
0.9610
0.1477
0.9700
0.0035
0.9410
0.1243
0.9334
0.0122
0.8825
0.2236
0.7373
0.0074
RL (IoU + KL)
0.9589
0.1471
0.9723
0.0047
0.9427
0.1232
0.9377
0.0087
0.8821
0.2276
0.7361
0.0102
Table 9: GMS as a reward: the target metric (GMS) improves, but IoU and CD degrade, especially on mcb-1000.
deepcad-1000
fusion360-1000
mcb_1000
Model
IoU↑
CD↓
GMS↑
IR↓
IoU↑
CD↓
GMS↑
IR↓
IoU↑
CD↓
GMS↑
IR↓
SFT (intermediate)
0.9108
0.1606
0.9461
0.0215
0.8534
0.1639
0.8821
0.0560
0.8030
0.1490
0.6863
0.0493
RL (IoU)
0.9451
0.1538
0.9527
0.0091
0.9013
0.1457
0.8935
0.0384
0.8748
0.1220
0.7028
0.0030
RL (GMS)
0.8982
0.1621
0.9646
0.0121
0.8427
0.1696
0.9032
0.0460
0.7588
0.3035
0.7285
0.0204
Table 10: GMS gain from the operation budget, by difficulty quartile. Q1 contains the parts whose first operation scores worst. Gains concentrate where single-pass generation fails.
k=1 (single-pass)
k=20 (full)
Quartile
DeepCAD
MCB
DeepCAD
MCB
Q1 (hardest)
72.8
39.2
94.1 +21.3
53.4 +14.2
Q2
95.0
58.9
97.7 +2.7
70.8 +11.9
Q3
98.1
78.3
98.2 +0.1
82.5 +4.2
Q4 (easiest)
98.7
87.3
98.7 +0.0
87.7 +0.4
Table 11: Operation distribution, corpus vs. inference (% of steps). The training corpus is nearly position-agnostic, while CADENA’s choice of first operation inverts between DeepCAD and MCB according to the geometry.
Position
Operation
Training corpus
DeepCAD
Fusion360
MCB
1st
extrude
53.6
80.1
70.3
26.0
revolve
32.5
16.1
27.2
73.2
2nd
extrude
34.8
36.6
38.9
31.1
hole
20.0
62.9
60.4
67.6
5th
extrude
46.8
20.4
23.5
15.3
hole
21.1
79.3
75.7
84.2
Table 12: CADENA-Bench, all metrics over the full benchmark (n=3396). Median CD at 8k and 30k sampled points, mean IoU and GMS, and the invalid rate. CD, IoU and GMS are computed only over parts for which a method returned a valid prediction, so each row’s means describe a different subset and IR is the column that says how large that subset is. This is the invalid rate for CADENA-Bench that Table 2 does not carry.
Method
CD8k↓
CD30k↓
IoU↑
GMS↑
IR↓
CAD-Recode
1.0614
0.9048
68.64
48.89
27.9
cadrille
1.2673
1.1253
68.77
49.79
0.8
CADReasoner
1.9707
1.8327
68.34
52.87
39.9
CADEvolve
1.3117
1.1433
73.00
52.90
10.8
CADFit†
0.7125
0.5364
75.69
54.80
18.8
CADENA-SFT
0.9643
0.7738
73.88
57.96
12.8
CADENA-RL
0.3310
0.1763
87.57
66.95
1.6
Table 13: CADENA-Bench by part family: shafts & bushings, gears & bearings, housings & frames. Metrics and averaging rule as in Table 12. Gears & bearings is the family on which the learned methods lose most, and the only one where direct fitting outscores CADENA.
Shafts & bushings (n=762)
Gears & bearings (n=749)
Housing & frames (n=359)
Method
CD8k
CD30k
IoU
GMS
IR
CD8k
CD30k
IoU
GMS
IR
CD8k
CD30k
IoU
GMS
IR
CAD-Recode
1.0089
0.8402
71.63
53.75
20.1
1.2859
1.0795
62.34
39.09
35.9
1.1932
1.0762
73.50
56.08
34.3
cadrille
1.0506
0.9071
73.29
57.55
0.9
1.4828
1.2861
65.72
37.18
0.4
1.8209
1.7479
70.12
54.46
0.6
CADReasoner
2.0882
1.9453
69.41
55.55
21.0
2.5867
2.4641
65.69
46.90
74.2
2.1856
2.0205
71.72
56.41
39.8
CADEvolve
0.9855
0.8518
77.68
59.57
10.9
1.6314
1.4526
67.78
41.34
12.1
1.6275
1.4723
75.58
59.39
8.6
CADFit†
0.4536
0.2711
81.53
60.81
16.1
0.5592
0.3590
79.61
61.27
18.6
1.7366
1.5505
63.48
48.45
25.6
CADENA-SFT
0.3176
0.1415
86.36
70.76
11.7
1.8563
1.6688
63.07
47.75
11.6
1.9574
1.8238
77.00
58.06
11.4
CADENA-RL
0.2825
0.1030
91.77
73.03
1.3
0.4907
0.3043
85.03
58.13
0.8
0.5807
0.4449
87.22
70.74
1.9
Table 14: CADENA-Bench by part family: flat & levers, springs & fasteners, tooling & gauges. Metrics and averaging rule as in Table 12. Tooling & gauges holds 17 parts, too few for its column to be read as a ranking; it is reported for completeness.
Flat & levers (n=464)
Springs & fasteners (n=1046)
Tooling & gauges (n=17)
Method
CD8k
CD30k
IoU
GMS
IR
CD8k
CD30k
IoU
GMS
IR
CD8k
CD30k
IoU
GMS
IR
CAD-Recode
0.3931
0.3175
72.96
58.79
33.5
1.1215
0.9922
67.17
45.31
23.4
1.8759
1.7713
67.27
38.66
23.5
cadrille
0.3682
0.2645
70.82
62.06
0.9
1.4312
1.2847
66.03
46.31
1.0
2.1844
2.0251
75.48
41.79
0.0
CADReasoner
0.2964
0.1945
74.57
69.67
29.4
2.8767
2.7127
62.75
43.36
33.7
1.8975
1.7782
82.11
38.47
47.1
CADEvolve
0.3448
0.2345
76.26
66.40
8.9
1.4773
1.3425
71.00
47.89
11.4
2.0745
1.9259
75.45
44.67
17.6
CADFit†
0.2585
0.1709
79.92
66.20
17.7
1.5809
1.4122
66.34
42.97
18.9
6.8112
6.5517
40.12
23.05
23.5
CADENA-SFT
0.2453
0.1670
75.79
66.75
10.4
1.1688
0.9830
70.85
51.92
16.2
1.4242
1.3335
67.87
43.36
5.9
CADENA-RL
0.1586
0.0566
88.38
76.81
2.4
0.3432
0.1986
85.94
63.35
1.8
0.3290
0.1903
91.49
59.98
5.9
Findings
CADENA is reported as achieving the best results among compared methods on DeepCAD, Fusion360, MCB, CADENA-Bench, and BenchCAD across metrics including Chamfer distance, IoU, GMS, and invalid rate.
Compared to a single-pass model (one operation only), adding just a second operation raised GMS by +4.4 on DeepCAD, +4.9 on Fusion360, and +3.9 on MCB; using the full 20-operation budget raised GMS by +6.0, +7.4, and +7.6 respectively.
The gains from stepping were concentrated in the hardest quarter of parts (those a single-pass model handled worst) — e.g. +21.3 GMS for the worst DeepCAD quartile versus 0 for the easiest — and a subset of near-total failures (66 DeepCAD, 24 Fusion360, 22 MCB parts) were rescued from below 0.30 IoU to above 0.70 IoU.
While the training corpus placed operations like extrude at roughly the same rate regardless of step position, CADENA's actual first choice shifted with the input shape: it opened with extrude in 80.1% of DeepCAD parts versus 53.6% in the corpus, and with revolve in 73.2% of MCB parts (dominated by turned, rotationally symmetric bodies) versus 32.5% in the corpus.
Four recurring failure types were identified: repeated features like gear teeth are approximated with roughly the right count rather than counted exactly, out-of-vocabulary shapes (e.g. helical springs) are replaced by the nearest available primitive, hidden internal cavities invisible from any of the eight rendered views are never recovered, and an early wrong reference plane is never corrected by later steps.
Where it can be used
Converting scanned or legacy 3D models without editable history back into parametric CAD programs that engineers can modify
Serving as an assistive tool in reverse-engineering pipelines that reviews intermediate CAD builds automatically before finalizing a design
Using CADENA-Bench as a standardized way to compare CAD reconstruction methods per mechanical-part family rather than a single averaged score
Limits and open work
Geometry outside the model's DSL vocabulary (freeform blends, non-circular helical shapes, draft angles) cannot be represented exactly and gets approximated by the nearest available operation.
Because the model only observes eight fixed rendered viewpoints, internal cavities, blind bores, and undercuts invisible from any of those views cannot be recovered no matter how many steps are taken.
If the very first operation sets an inconsistent reference plane or origin, later steps cannot correct that underlying error, only build on top of it.
Several closely related methods (SOV-CAD, CADFS, Zero-to-CAD) could not be directly benchmarked due to missing checkpoints, proprietary output formats, or incomplete released tooling, so comparisons to them are limited or indirect.
The gears & bearings part family remains the weakest category, largely due to the difficulty of counting repeated features like gear teeth exactly.
Why it matters
Converting scanned or legacy 3D shapes into editable CAD models currently takes heavy expert effort, and this stepwise, self-checking approach points toward reducing early mistakes that would otherwise silently compound through the whole program. The new CADENA-Bench and GMS metric also give the field a more realistic way to test CAD reverse-engineering methods on real mechanical parts rather than only simple sketch-extrude shapes.
Terms in this paper
CAD reverse engineering · Inferring the editable design commands (a CAD program) that would produce a given 3D shape
mesh · A 3D shape represented as a set of triangles, with no built-in notion of holes, walls, or other editable features
IoU (Intersection over Union) · A measure of how much two 3D shapes overlap in volume, expressed as a percentage
GMS (Generalized Match Score) · This paper's new metric that scores agreement of surface position and orientation, not just occupied volume
reinforcement learning (RL) · A training method where the model improves by receiving reward scores for its outputs rather than being shown the exact correct answer
Original abstract (English)
Computer-Aided Design (CAD) underpins modern engineering, yet converting existing shapes into editable models still demands substantial expert effort. Most AI systems emit the entire CAD program in a single pass, never inspecting the intermediate geometry. In contrast, human engineers build a part feature by feature, checking after each operation what remains to be modeled. We introduce CADENA (Spanish for "chain"), a model that reconstructs a 3D mesh as a parametric CAD program, growing its seq