Can It Actually Work? Synthesizing Functional CAD Mechanisms

Wenqian Zhang, Yangyi Huang, Zigeng Xu, Weiyang Liu, Zhen Liu
10/19/2026
cs.CVcs.CLcs.GR

No confident code implementation found for this paper. 4 possible matches can be shown below.

Abstract

While LLM agents can generate visually plausible CAD assemblies, these designs often fail to fulfill their intended physical functions. We study functional CAD design, a setting where agents interpret underspecified requests to construct and iteratively revise mechanisms that satisfy functional requirements in physical simulation. Verifying these requirements is nontrivial: different candidate mechanisms may realize the same function through entirely different components, controls, and operating sequences. To bridge this gap, we propose FunCAD-Harness, a framework that translates abstract requirements into candidate-specific physical tests and uses simulation feedback to guide design revisions. To systematically evaluate this capability, we introduce FunCADBench, a benchmark spanning 46 mechanism families with interdependent and multi-step operations. Experiments across frontier LLM agents show that FunCAD-Harness exposes subtle mechanical failures invisible to visual inspection, substantially improving functional success rates over standard simulation-augmented baselines. Ultimately, our work marks a step toward CAD agents capable of translating human intent into working mechanisms.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 4 weaker matches are hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{zhang2026actually,
  title  = {Can It Actually Work? Synthesizing Functional CAD Mechanisms},
  author = {Wenqian Zhang and Yangyi Huang and Zigeng Xu and Weiyang Liu and Zhen Liu},
  year   = {2026},
  eprint = {2610.26861},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2610.26861v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2610.26861.svg)](https://codeofpaper.com/paper/2610.26861)

Discussion