La creazione di un modello CAD resta uno dei passaggi più delicati nel percorso che porta da un’idea a un oggetto stampabile in 3D. Un conto è generare una forma tridimensionale da vedere sullo schermo, un altro è ottenere un modello tecnico, pulito, modificabile e utilizzabile in un flusso di progettazione. È proprio su questa differenza che si inserisce GenCAD, un progetto sviluppato al Massachusetts Institute of Technology da Md Ferdous Alam e Faez Ahmed, all’interno dell’area di ricerca dedicata alla progettazione computazionale e all’intelligenza artificiale per l’ingegneria.
GenCAD non punta a produrre una semplice mesh, un modello voxel o una nuvola di punti. Il suo obiettivo è generare una sequenza di comandi CAD parametrici partendo da un’immagine, da un rendering o da uno schizzo. In pratica, il sistema cerca di ricostruire non solo la forma finale, ma anche la “storia” con cui quella forma può essere costruita in un ambiente CAD. Questa è la parte più interessante per chi lavora con la stampa 3D, perché un file davvero utile non deve solo assomigliare all’oggetto desiderato: deve poter essere corretto, quotato, adattato, esportato e preparato alla produzione.
Perché non basta generare una mesh
Molti strumenti basati su intelligenza artificiale per la generazione 3D lavorano con mesh, voxel o point cloud. Sono rappresentazioni adatte alla visualizzazione, alla prototipazione concettuale e a diversi ambiti grafici, ma presentano limiti evidenti quando si entra nella progettazione meccanica. Una mesh può essere bella da vedere, ma non contiene necessariamente vincoli, operazioni, quote o logica costruttiva. Per modificarla in modo preciso spesso bisogna intervenire manualmente, ricostruire superfici o convertirla in una geometria più adatta al CAD.
Nel CAD tecnico, invece, contano parametri, schizzi, estrusioni, bordi, superfici e relazioni geometriche. La rappresentazione B-rep, usata da decenni nei software CAD industriali, permette di descrivere un solido tramite superfici, spigoli e vertici, ma non è semplice da trattare con reti neurali. GenCAD aggira il problema lavorando su una rappresentazione più vicina a un linguaggio: una sequenza di operazioni CAD che può essere interpretata da un kernel geometrico e trasformata in un modello solido.
Come funziona GenCAD
Il modello combina quattro componenti principali. La prima è un trasformatore autoregressivo, usato per apprendere la rappresentazione delle sequenze di comandi CAD. La seconda è un sistema di apprendimento contrastivo che collega il mondo dell’immagine a quello del programma CAD, in modo che l’immagine e la sequenza costruttiva corrispondente finiscano in uno spazio latente comune. La terza è un modello di diffusione latente, che genera una rappresentazione CAD condizionata dall’immagine in ingresso. La quarta è un decoder, che traduce quella rappresentazione in comandi CAD parametrici.
Detto in modo più semplice: GenCAD osserva un’immagine, la collega a una possibile sequenza di costruzione e produce un programma CAD. Questo programma può poi essere convertito in un solido 3D. La differenza rispetto a un generatore 3D tradizionale è sostanziale: il risultato non è solo un volume da esportare, ma una struttura più vicina a ciò che un progettista potrebbe aprire, analizzare e correggere.
Una questione importante per la stampa 3D
Per la stampa 3D, il passaggio dal modello generato alla parte producibile è spesso il vero collo di bottiglia. Un oggetto deve avere spessori coerenti, superfici chiuse, dettagli compatibili con la tecnologia scelta, tolleranze adeguate e, nei casi funzionali, geometrie controllabili. Se un sistema IA produce solo una forma esteticamente simile all’input, il lavoro successivo può diventare lungo quanto rifare il modello da zero.
GenCAD è interessante perché si concentra sul modello modificabile. Per un progettista, questo potrebbe significare partire da uno schizzo, da un’immagine di riferimento o da un vecchio componente e ottenere una base CAD su cui intervenire. In un contesto di reverse engineering, per esempio, un’immagine potrebbe aiutare a individuare una geometria di partenza; in una fase di concept design, uno schizzo potrebbe diventare una prima bozza parametrica; in un laboratorio di stampa 3D, il modello generato potrebbe essere corretto prima della preparazione in slicer.
Non solo generazione: anche ricerca di modelli CAD
Un altro aspetto utile è la ricerca di programmi CAD partendo da immagini. Il team del MIT mostra che la stessa struttura usata per collegare immagini e sequenze CAD può servire anche per recuperare modelli simili in un database. Invece di cercare un file per nome o categoria, l’utente potrebbe usare un’immagine come query e ottenere modelli CAD vicini alla forma cercata. Nei test descritti nel paper, il modello supera approcci basati su semplice somiglianza immagine-immagine.
Questa funzione potrebbe avere un impatto pratico nei cataloghi di parti, nei database aziendali, negli archivi di componenti standard e nelle librerie di modelli per la produzione additiva. Chi lavora con grandi quantità di file sa quanto sia difficile ritrovare un componente quando il nome non è chiaro o quando il file è stato salvato anni prima con una nomenclatura poco leggibile. Una ricerca visiva collegata alla geometria CAD potrebbe ridurre il tempo perso in queste attività.
Il legame con DeepCAD e i dati di addestramento
GenCAD si inserisce in una linea di ricerca avviata da lavori come DeepCAD, che descrive i modelli CAD come sequenze di operazioni. DeepCAD ha introdotto un dataset con 178.238 modelli e relative sequenze costruttive, offrendo una base importante per l’addestramento di sistemi generativi nel CAD.
Nel caso di GenCAD, il punto non è solo imparare una distribuzione di forme, ma allineare immagini e programmi CAD. Questo consente di passare da un input visivo a una sequenza di comandi. Il paper mette a confronto GenCAD con metodi come DeepCAD l-GAN e SkexGen, segnalando risultati migliori in diversi criteri di valutazione per generazione condizionata e ricostruzione delle sequenze.
Codice disponibile e possibili integrazioni
Il codice di GenCAD è pubblicato su GitHub nel repository di Md Ferdous Alam. Il progetto include istruzioni per l’uso con Docker, modelli preaddestrati, dataset e script per training e inferenza. Nella pagina del repository vengono citati anche l’uso di pythonocc-core e procedure per l’esecuzione in ambienti headless, un dettaglio utile per chi lavora su server o workstation senza interfaccia grafica completa.
Non siamo davanti a un plug-in pronto per il progettista che usa ogni giorno Fusion, SolidWorks, Onshape, FreeCAD o altri ambienti CAD. Il progetto è ancora una base di ricerca, ma la pubblicazione del codice permette a sviluppatori, ricercatori e aziende di testare il metodo, adattarlo e capire come potrebbe entrare in flussi più pratici.
I limiti da considerare
GenCAD non va interpretato come un sostituto immediato del progettista CAD. Gli stessi autori indicano limiti precisi. I programmi CAD usati nello studio sono più semplici rispetto a molti progetti industriali; il vocabolario di comandi include linee, archi, cerchi ed estrusioni, ma non copre ancora operazioni come rivoluzioni, raccordi, smussi e altre funzioni avanzate. Inoltre, il modello non garantisce sempre la validità geometrica del CAD generato.
C’è anche un tema legato alle immagini di input. Lo studio lavora soprattutto con immagini CAD isometriche e pulite, non con fotografie rumorose, prospettive difficili o oggetti ripresi in condizioni reali. Per passare a un uso più ampio, sarà necessario migliorare la robustezza su immagini non ideali, introdurre controlli geometrici e ampliare il set di comandi supportati.
Un percorso che continua con GenCAD-3D
La linea di lavoro non si ferma a GenCAD. Un’estensione chiamata GenCAD-3D, firmata da Nomi Yu, Md Ferdous Alam, A. John Hart e Faez Ahmed, sempre al MIT, lavora sul problema della generazione di programmi CAD a partire da dati 3D non parametrici come point cloud e mesh. Il paper introduce anche SynthBal, una strategia di aumento dati pensata per bilanciare dataset con geometrie CAD più complesse.
Questo passaggio è importante perché molte attività di reverse engineering partono proprio da scansioni 3D, nuvole di punti o mesh ottenute con scanner. Convertire questi dati in CAD parametrici resta un lavoro specialistico. Se sistemi come GenCAD e GenCAD-3D riusciranno a gestire geometrie più difficili, potrebbero diventare strumenti utili per accelerare la ricostruzione di parti tecniche, pur lasciando al progettista il controllo finale.
Cosa significa per progettisti e maker
Per chi progetta parti da stampare in 3D, GenCAD mostra una direzione chiara: l’intelligenza artificiale può diventare un assistente nella fase di modellazione, non solo un generatore di forme decorative. La differenza è decisiva. Un oggetto generato come mesh può essere sufficiente per un modello artistico o un prototipo visivo; un componente tecnico richiede invece un CAD editabile, verificabile e adattabile.
Il valore più concreto di GenCAD sta quindi nella possibilità di ridurre il tempo tra idea e primo modello modificabile. Non elimina la necessità di competenze CAD, ma può fornire una base da cui partire. In un laboratorio, in un service di stampa 3D o in un ufficio tecnico, questo tipo di strumento potrebbe aiutare soprattutto nelle prime fasi: raccolta di riferimenti, ricostruzione di geometrie semplici, ricerca di modelli simili e generazione di bozze parametriche.
Il progetto resta in una fase di ricerca, ma affronta un problema reale: trasformare l’output dell’IA in qualcosa che possa entrare davvero nel processo di progettazione e produzione. Per la stampa 3D questo punto è centrale. Il futuro degli strumenti generativi non dipenderà solo dalla qualità visiva dei modelli, ma dalla loro capacità di diventare file tecnici, modificabili e pronti per essere controllati prima della stampa.
