MADI 2017 TESI MASTER IN ARCHITETTURA DIGITALE IUAV
LA PARAMETRIZZAZIONE DI UN PROCESSO ARTIGIANALE: IL DIVANO CUSTOM CON GRASSHOPPER relatore fabioD'AGNANO candidati ilariaFANTIN 285990 marcoRADIN 286043 riccardodavideZERBINATI 286342
un sentito ringraziamento alle nostre famiglie e amici grazie agli splendidi colleghi che abbiamo conosciuto in questo percorso veneziano. Abbiamo iniziato il Master come singoli e lo abbiamo chiuso come famiglia. Ci mancheranno gli aperitivi in compagnia grazie a Druetta e a Fabio che ci hanno seguito in questo percorso
INDICE INTRODUZIONE 1 ABSTRACT 1 BOTTEGHE DIGITALI 1
DRUETTA 3 LA BOTTEGA ARTIGIANA PROCESSO PRODUTTIVO I MATERIALI
3 5 5
IL PROCESSO DI DESIGN
7
LA RICERCA DELL'ALGORITMO RISOLUTIVO
9
IL PRIMO APPROCCIO ALLA PARAMETRIZZAZIONE LE TRE TIPOLOGIE
7
9
L'ALGORITMO PROPOSTO
13
L'ALGORITMO COMPLETO L'OUTPUT VETTORIALE PER LA STAMPA 3D
19 21
L'OUTPUT GEOMETRICO PER LA VISUALIZZAZIONE
23
CONTESTUALIZZAZIONE STILL IMAGES
25
PROCESSO PER LA COSTRUZIONE DEL DIVANO CUSTOM 13 LO SCHIENALE 15 IL MODULO DI MODELLAZIONE 15 L’ELABORATORE 17
I PEZZI CON LA MACCHINA CNC
IMPORTAZIONE DELLA GEOMETRIA IN 3DS MAX E RIFINITURE DEL MODELLO SCELTA DELLE AMBIENTAZIONI un sentito ringraziamento alle nostre famiglie e amici grazie agli splendidi colleghi che abbiamo conosciuto in questo percorso veneziano. Abbiamo iniziato il Master come singoli e lo abbiamo chiuso come famiglia. Ci mancheranno gli aperitivi in compagnia...
21
23
25
CONCLUSIONI 33 IMMAGINI E BIBLIOGRAFIA 35
INTRODUZIONE ABSTRACT
BOTTEGHE DIGITALI
Il nostro gruppo si è occupato della parametrizzazione della struttura portante lignea dei divani che creano e producono gli artigiani della Tappezzeria Druetta.
le fasi successive al taglio dei pezzi in legno. La fase di montaggio infatti deve essere ben correlata alla fase cognitiva e di disegno per evitare risoluzioni di frettolose e di urgenza.
Grazie agli algoritmi parametrici che abbiamo costruito, siamo riusciti con maggiore semplicità ad ottenere il disegno tridimensionale delle componenti lignee strutturali di un divano/ poltrona artigianale (traversi, piattine, ritegni, cerchiature, profili). Definita una forma di base, modificabile in ogni parte del processo generativo, l'artigiano può editare con grande semplicità, grazie all'utilizzo di alcuni cursori numerati -slider-, le forme e le geometrie dalle quali verranno poi dedotte, sempre tramite processo evolutivo dell'algoritmo, i disegni e le forme di tutte le singole parti che formano lo scheletro di questo arredo. Queste parti potranno poi essere inviate ad una macchina cnc per un taglio meccanico-informatico-automatico del legno.
L’attenzione si è poi indirizzata sul completamento dell’algoritmo di uno dei tre divani assegnatici, che meglio racchiude le principali variabili messe in primo piano durante le riunioni e gli incontri avvenuti con l’artigiano durante i mesi passati. Il divano proposto, infatti, è il primo esempio di un processo artigianale migrato su calcolatore ad utilizzare un approccio di sviluppo parametrico. Relativamente ai feedback di questo primo test, si potrà procedere con eventuali migliorie o alla modifica di alcuni parametri per rendere l'algoritmo ancora più user-friendly.
Accordandoci con Gabriele, abbiamo identificato ed analizzato tre casi studio che racchiudono le più comuni tipologie di divani; per ogni tipologia l'artigiano ci ha fornito disegni e foto delle fasi costruttive e di montaggio per aiutarci a comprendere al meglio le sue necessità e i possibili intoppi che comprendono
Botteghe digitali è il progetto di Banca IFIS impresa dedicato alle eccellenze del Made in Italy. Nato come format di racconto dell’artigianato italiano, Botteghe Digitali si è trasformato in un vero e proprio esperimento di manifattura 4.0. Gli artigiani, accompagnati in tutto il loro percorso da un coach, hanno a disposizione un team di specialisti e professionisti di livello che li aiuteranno a compiere scelte giuste per avviare le proprie attività verso il successo. Nelle prime fasi, i coach dovranno capire lo stato delle attività artigiane così da creare una “fotografia” dell’azienda attuale e poterla proiettare verso il futuro, dirigendosi verso precise potenzialità e obiettivi raggiungibili:
- comunicazione dei propri prodotti - interventi e spazi di lavoro - presenza digitale sui social media - analisi e redesign dei prodotti
Il successo ottenuto da Botteghe Digitali, ci fa capire che la strada da intraprendere verso la “rivoluzione 4.0” è necessaria per dare una nuova spinta al Made in Italy.
1
DRUETTA LA BOTTEGA ARTIGIANA La Tappezzeria Druetta è un’attività artigiana nata nel 1953, con Matteo Druetta, locata a Moretta, un piccolo comune della provincia di Cuneo.
materiali. I tessuti stimolano ogni giorni a fare investimenti di nuove collezioni e ricerca su materiali tessili che possono essere usati in tappezzerie di arredi, tendaggi o pareti.
Il figlio Antonello comincia fin da adolescente a far pratica nell’attività di famiglia, cercando di apprendere e migliorare le tecniche apprese dal padre. Grazie a questa esperienza e alla voglia costante di migliorare comincia ad inserire le funzionalità di uno studio di progettazione e design all’interno della bottega.
Le conoscenze che si acquisiscono di giorno in giorno, sono in parte provenienti dal background della famiglia Druetta - il sapere del nonno che è stato tramandato prima al figlio e poi ai nipoti - e in parte provenienti da interventi su oggetti preesistenti.
Oggi l’azienda è portata avanti da Veronica e Gabriele, nipoti di Matteo che hanno deciso di prendere in mano questo lavoro, più che semplicemente accoglierlo trasformando la vecchia attività in un’impresa 4.0. Un tappezziere era ed è un artigiano che si colloca alla fine di un processo produttivo tappezzando, coprendo; oggi, la rinnovata bottega artigiana, vede il tappezziere come un artigiano che ha in mano tutto il prodotto, tutti i suoi aspetti e può invece “creare” disegnare o tornare alla sorgente, fornendo quindi un approccio su misura che va incontro al cliente. Quando si crea un oggetto, arrivando dal mondo del tessuto e del legno, Druetta cerca di lasciarsi ispirare da queste forme e da questi
La possibilità di intervenire su oggetti esistenti - che dovendo essere restaurati vengono completamente disfatti - permette di entrare in contatto con altri tappezzieri, scoprire come, in altre epoche e con altri materiali, questi siano riusciti a generare oggetti custom di design e personalizzati. La realizzazione di un oggetto su misura implica un notevole dispendio di tempo e di risorse; l’iter che si ripete continuamente prevede la stesura di disegni di bozza, disegni tecnici e modelli tridimensionali per giungere infine alla parte concreta, fisica che compone l’elemento stesso con il montaggio e la copertura/rifinitura tramite tessuto. In un processo che ha impegno mediamente mensile, quanto un’azienda artigiana
di questo tipo potrebbe beneficiare di un’automatizzazione del processo di sviluppo, o di una semplificazione algoritmica relativa all’estrapolazione dei dati finali ancora in fase cognitiva? Tempo addietro si cercava di apportare innovazione in un’azienda o in un’attività, attingendo dalle conoscenze del passato. Oggi possiamo sfruttare tutta una serie di strumenti parametrici - algoritmi - supervisionati dalla coscienza umana, che velocizzano i processi per la costruzione e costituzione di oggetti. Definito un algoritmo, costruito sulle specifiche esigenze del cliente, una serie di input (come forma della base, numero di irrigidimenti strutturali e loro posizione...) l’artigiano può ottenere immediatamente un riscontro visivo dell’oggetto che vuole realizzare. Trattandosi di una serie di operazioni matematiche, l’algoritmo rimane editabile in ogni fase del processo cognitivo lasciando libero spazio ad estro e processi cognitivi dell’utente. In questo modo un processo di sviluppo mensile può essere ridotto al minimo in un processo di un paio di ore, alla fine delle quali si può avere a disposizione una serie di geometrie da poter stampare e quindi montare. Sembra fantascienza? Ecco la spiegazione della nostra proposta per l’attività artigiana Druetta.
3
PROCESSO PRODUTTIVO Il processo per la produzione e la costruzione di un elemento di arredo custom da parte dell’artigiano si divide in diverse fasi: - incontro con il cliente durante il quale vengono definite dimensioni, stile, rifinitura, riempimento... - design e progettazione è la parte più corposa del processo produttivo di un elemento d’arredo su misura; l’artigiano impiega quasi un mese per definire con cura, tramite disegni e modelli tridimensionali, le proporzioni, gli elementi dell’ossatura lignea -concepiti per agevolare poi il successivo montaggio- la quantità di costole, irrigidimenti, la loro posizione in funzione della dimensione dell’arredo, gli elementi a funzione di scuretto per l’aggancio del tessuto di rivestimento... - taglio dell’ossatura in legno che solitamente avviene tramite seghe a nastro, seghe circolari, troncatrici, pialle e dalle quali si ottengono le parti strutturali, quelle che andranno a sostenere l’arredo, gli elementi di riempimento e gli utilizzatori. Possono essere identificati come basette superiori o inferiori, cerchiature, costole, ripiani di irrigidimento tra le costole. Questi elementi solitamente hanno uno spessore di 2.5 - 3 cm per assicurare un facile trasporto e semplificare l’operazione
I MATERIALI di montaggio mantenendo il peso di questi elementi quanto più contenuto. - montaggio dell’ossatura lignea avviene in un paio di giornate. Questa fase si semplifica notevolmente se durante la progettazione si tengono conto di tutta una serie di accorgimenti come la posizione e la facilità di raggiungimento di determinati incastri -tenone e mortasa- e spine. Questo processo, in effetti molto delicato, spesso richiede accorgimenti dell’ultimo minuto come modifiche ai pezzi stessi, poichè durante la progettazione, non sempre agevole in fase di concretizzazione degli elementi -la curvatura dello schienale e la vettorializzazione di una geometria curva su di un piano- portano spesso piccoli errori che si manifestano nelle fasi successive. Si possono utilizzare incastri per il montaggio dell’ossatura di un divano, ma in pratica, il disegno originale deve essere completato maniacalmente. - riempimento e rifinitura sono le operazioni finali che danno forma e sostanza all’elemento di arredo; come espliciteremo più tardi, i materiali di riempimento possono essere i più disparati. Solamente il tessuto, la pelle stessa dell’elemento potrà conferire quella sensazione ricercata dal committente
I materiali utilizzati per la realizzazione di un elemento di arredo custom, possono essere classificati in materiali della struttura, materiali di riempimento e materiali di rifinitura. Il materiali utilizzato per gli elementi strutturali è il legno in tavole, con spessori e sezioni variabili dai 2.5 a 3.5 mm. I riempimenti possono essere composti da trucioli di pioppo, paglia di lino, crine di cavallo, lana, ovatta, fibre di kapok e poliuretani. Il materiale utilizzato viene selezionato in base alle funzioni e alle dimensioni che dovrà svolgere l’elemento in progetto Il rivestimento, principalmente scelto dal cliente, è ciò che va a completare il divano, ad ammorbidire i profili, ad avvolgerlo e a restituire la sensazione finale. Il progetto si concentrerà sullo sviluppo della parte lignea, la parte strutturale dell’oggetto custom che grazie agli strumenti parametrici, sarà ottenuta tramite macchine a controllo numerico
5
6
IL PROCESSO DI DESIGN IL PRIMO APPROCCIO ALLA PARAMETRIZZAZIONE
Il lavoro dell’artigiano, come anticipato nelle parti precedenti, si divide in fase concettuale, progettuale e compositiva.
Come possiamo osservare dai disegni qui a fianco, gentilmente forniti da Druetta, si passa da una fase di sketch dopo l’incontro con il cliente, a una fase più tecnica, di disegno con quote, per definire le proporzioni e le dimensioni. Il disegno vettoriale 2D viene successivamente importato in un programma di modellazione tridimensionale - sketchUp - per riuscire, a modello finito, a estrapolare tramite sezioni i profili che serviranno poi per generare i disegni vettoriali di parti come le costole, mensole e profili di base, che altrimenti sarebbero generate tramite deduzione da prospetti e piante disegnate in due dimensioni. Per quanto intuitivo, questo passaggio genera alcuni errori grossolani che possono modificare di qualche decimo di millimetro (o poco più) la posizione degli incastri e dei fori delle spine che serviranno alla giunzione dei pezzi in fase di montaggio. Questo accade perché il software per lo sviluppo tridimensionale che viene utilizzato (oltre a sketchUp possiamo pensare anche ad un software più professionale come Autodesk 3ds Max) nel momento in cui si estrapolano le sezioni, ha bisogno di eseguire
una serie di approssimazioni che trasferite ad una base vettoriale e poi successivamente pulite (da linee sovrapposte o segmenti non uniti) si discostano leggermente dalla geometria bidimensionale reale. Druetta ci ha infatti confidato che, empiricamente, nonostante le ore spese a produrre un modello quanto più fedele possibile, con ore e ore di lavoro per cercare di affinare i profili e le curve, si ottengono errori che necessitano di interventi durante la fase di montaggio. Questo accade con profili abbastanza regolari, figuriamoci con forme curve, più libere e più “naturali”. Lavorando con un software parametrico grasshopper - invece, possiamo ottenere delle geometrie 2D semplicemente inserendo alcuni elementi nell’algoritmo (processi matematici che il calcolatore riconosce come operazioni matematiche) che permettono di passare dalla fase bidimensionale di progettazione alla fase bidimensionale finale, quella utile per il taglio delle geometrie 2D tramite macchine a controllo numerico. La potenzialità di questo software risiede anche nella possibilità di progettare durante la fase cognitiva. Trattandosi di un algoritmo, l’output finale, se attivo, restituisce continuamente un
modello sul quale l’artigiano può fare critiche, commenti, accorgimenti. Presa visione di questi elementi tridimensionali, si può tornare ai primi passaggi di questo processo matematico e variare i parametri che generano alcune parti o forme sgradite; pi semplicemente ci si può accorgere che sarebbe veramente difficile operare con alcuni elementi dalle forme più o meno bizzarre. Inoltre, tramite questo algoritmo, possiamo fornire all’artigiano l’abilità di studiare le parti dell’elemento di arredo (base/seduta e schienale) separatamente. Queste due parti strutturali infatti fanno parte dello stesso algoritmo ma si trovano su due filoni separati. Gli output delle forme geometriche vettoriali saranno volutamente splittate in modo da alleggerire l’interfaccia utente, composta da componenti che saranno spiegati all’utente e infine rendere l’algoritmo più user friendly. La buona pratica ci ha insegnato che complessi algoritmi, in mano soprattutto a neofiti, causano più danni che benefici. In questo caso cerchiamo di porre rimedio alle eventuali ore che l’utente potrebbe impiegare al primo avvio, solo per capire l’organizzazione del file.
7
1
2
8
LA RICERCA DELL'ALGORITMO RISOLUTIVO LE TRE TIPOLOGIE Abbiamo provato dunque a fornire un algoritmo di risposta per lo sviluppo di ognuno di questi tre divani che incarnano le basi di un modello di divano custom prodotto dalla Tappezzeria Druetta. 1 - Il Divano Rosso Questo divano fa parte della tipologia più semplice: la sua base è composta da un doppio profilo in legno distanziato da alcuni blocchetti lignei di irrigidimento. La base è irrigidita da alcune corde che vengono ancorate al legno e intrecciate tra loro per supportare e ripartire il carico degli utenti. Lo schienale è composto da “zainetti” (due spalle con fondo) riempiti da materiale spugnoso e poi rivestiti. Per la parametrizzazione ci siamo focalizzati sull’importazione di una shape di base, simmetrica o non, generando le cerchiature di spessore e profondità prestabiliti che sviluppasse il numero di distanziali in base richiesti e che prevedesse delle costolonature intermedie (per basi di elevata grandezza) che irrigidissero le cerchiature. Per lo schienale abbiamo previsto di poter scegliere di posizionare un quantitativo di “zainetti” ripartendo la dimensione principale in segmenti della stessa lunghezza, potendone poi definire l’altezza e lo spessore.
2 - Il Divano Verde Tralasciando l’aspetto decorativo del capitonnè sul retro che è eseguito come finitura sul divano, quindi come ultima fase, questa seconda tipologia si differenzia dalla precedente poichè le curve “custom” che caratterizzano lo schienale e la seduta, non sono forme riconducibili a equazioni matematiche. Anche questo divano presenta una base avente le stesse caratteristiche di quella vista nel Divano Rosso con la sostanziale differenza dei due “lembi” che abbracciano lo schienale ai lati.
Infine a complicare il ulteriormente l’opera, dalle foto si nota chiaramente un incavo usato dal tappezziere per fissare la stoffa all’altezza della cucitura. Questa tecnica si riconduce alla tappezzeria classica e permette, insieme al capitonnè una ricostruzione in stile. La pianta libera della seduta e la costruzione scultorea del colmo dello schienale rendono questo divano parametrizzabile - ma con qualche compromesso - poichè alcuni elementi generati dall’evoluzione del processo manuale risultano difficilmente trasmigrabili e comprensibili ad un processo matematico algoritmico.
Dal punto di vista geometrico/progettuale, la seduta rimane concettualmente semplice: un cilindro generalizzato. Lo schienale, invece, a differenza del Divano Rosso, ha caratteristiche molto più complesse legate alle sue forme morbide ed organiche. In primis, segue la curva della seduta, generata come forma libera. Inoltre il colmo della seduta, a differenza degli altri due divani risulta modellato come curva personalizzata complessa, la cui costruzione è più vicina ad una scultura che ad un’effettiva progettazione geometrica.
9
3
10
3 - Il Divano Giallo L’approccio proposto per la costruzione parametrica di questo divano è leggermente differente dai due precedenti: come si vede dalle immagini inviateci da Druetta, la struttura lignea di questo arredo è spezzata al centro dello schienale, e parte della seduta, si integra nella forma del bracciolo. La struttura lignea di questo divano risulta differente da quelle precedenti; come si può notare infatti la base non presenta cerchiature o distanziali, mentre lo schienale è composto da tre costole, posizionate rispettivamente sul bracciolo, al centro della curvatura tra bracciolo e schienale e al centro dello schienale. Qui al centro, la costola è binata con un’altra, posizionata dopo l’interruzione strutturale. Il divano risulta essere simmetrico rispetto a questo punto. Per lo studio dell’algoritmo abbiamo quindi deciso di procedere in maniera differente rispetto ai divani precedenti, lasciando più libertà all’utente, lasciandogli scegliere la forma di base, che tramite algoritmo è stata scomposta e interpretata, dividendo le linee dalle curve e permettendo la modifica della forma base anche durante la modellazione prarametrica.
Questo processo purtroppo si è verificato vano, poichè inseriva troppe variabili modificabili e l’utente avrebbe fatto veramente molta fatica a controllarle tutte. Soprattutto per quanto riguarda il raccordo tra bracciolo e schienale, un piccolo arco con i punti di controllo su estremità e ampiezza del raggio che poteva muoversi nello spazio liberamente. Questo avrebbe causato problemi prima di tutto in termini di celerità, ma anche in termini geometrici poichè non si aveva la certezza che i parametri inseriti per la posizione di questi elementi avrebbero permesso di generare una geometria pulita e stampabile (una geometria non manifold) La struttura come quella fornitaci in foto è stata replicata ma si è scelto successivamente di diminuire il numero di parametri editabili dall’utente per scongiurare ogni possibile errore dell’algoritmo o qualche malfunzionamento non programmato.
Dopo aver preparato gli algoritmi di questi tre divani, abbiamo avuto l’occasione di confrontarci nuovamente con Gabriele che capito concretamente quello che gli potevamo offrire - in termini di parametrizzazione ha corretto un pochino la sua richiesta, spiegandoci altre lavorazioni (problemi di montaggio, necessità di avere determinate forme prima di altre e poterne visualizzare altre ancora) che durante i primi incontri non erano state menzionate. In questo brain-storming ci è stato anche spiegato come effettivamente funzionano gli agganci tra mensole e costole all’interno della struttura del divano, e di come, secondo le necessità possano volerci più o meno elementi per irrigidire la base, poter collegare le corde per la posa del materiale di riempimento, come costruire i correnti (piani e non inclinati poichè è più indicato ottenere la forma finale con i materiali di riempimento) e così via. Decisi gli ultimi punti e soddisfatto della prima parte del compito da noi svolto, Druetta ci ha richiesto di procedere con il completamento di un solo algoritmo che comprendesse tutte queste caratteristiche che erano state valutate in quei primi mesi e durante gli incontri.
11
INPUT + elaborazione curva
Elaboratore: sopra cerchiature/sotto zoccoli
La struttura è molto semplice ma allo stesso tempo estremamente versatile. Può essere usata per progettare qualsiasi genere di seduta, panche, sofà, divani, pouf (in pezzo unico o modulari) e, cosa più importante, dare spazio alla creatività dell’utente.
12
OUTPUT
L'ALGORITMO PROPOSTO IL DIAGRAMMA DELLA SEDUTA
Dopo una serie di incontri e commenti con Druetta, partendo dall’algoritmo creato per sviluppare il Divano INPUTVerde abbiamo iniziato a comporre Disegno l’algoritmo definitivo. delle sezioni
INPUT
Pianta della seduta Altri parametri
Altri parametri
Usa gli INPUT per ottenere un modello 3D della struttura della seduta
Modulo di stampa Elabora il modello 3D e produce delle curve 2D posizionate sul piano XY per la successiva stampa
Curve 2D seduta
semplice in quanto è composta da due cerchiature distaccate da un numero di zoccoli modificabili a piacimento. Per prima cosa è necessario disegnare la
INPUT Durante le varie sessioni di correzione e pianta della seduta (seguendo proprio il
Elaboratore
OUTPUT
PROCESSO PER LA COSTRUZIONE DEL DIVANO CUSTOM
OUTPUT VISUALE
e numero revisione, Druetta ci ha fornito molti Posizione spunti utili processo creativo/costruttivo di Druetta). elementi strutturali per poter capire ancora meglio le fasi delle Altri parametri Modulo di loro lavorazioni e di montaggio, cosa che ci ha Le altre variabili sono: permesso modellazione di comporre un algoritmo che cerca • lo spessore della tavola di legno che si di soddisfare al meglio i requisiti dell’artigiano, andrà a tagliare Interpola i dati di input e semplificando fasi più complesse, • la larghezza del taglio produce unle modello 3D migliorando (netsurface) l’interazione macchina-utente • la distanza tra le cerchiature che sarà poi e velocizzando il processo di concezione/ l’altezza degli zoccoli produzione di un arredo custom. • la larghezza degli zoccoli • il numero degli zoccoli Elaboratore Per produrre uno strumento di massima utilità • il rientro degli zoccoli Suddivide il modello 3D in per l’artigiano siamo partiti proprio dal suo solidi orizzontali e verticali e processonecreativo/produttivo studiando i suoi In questo modo si ottiene un semplice costruisce gli incastri lavori ed i suoi (waffle) schizzi preparatori. strumento che permette di creare delle strutture con due piani forati (cerchiature) distaccati da Per la creazione del modello richiesto sono un numero di zoccoli a scelta. stati creati 2 algoritmi collegati tra loro: il Eventuali moduli di rinforzo in legno o in acciaio primo è quello della seduta, il secondo invece vengono aggiunti in seguito. Anche eventuali Modulo di e costruisce lo schienale. Entrambi sono moduli da usare come base vanno aggiunti in stampa suddivisi in parti. seguito. Elabora gli elementi strutturali
creati e produce delle curve 2D Nel caso della seduta, l’algoritmo è composto posizionate sul piano XY per la da un modulo di modellazione e da uno di successiva stampa stampa. L’algoritmo che produce la seduta è molto
La struttura si adatta alla creazione di sedute per poltrone, divani o anche semplicemente per pouf con piante di qualsiasi forma.
13 OUTPUT
curva generatrice dello schienale
INPUT
curva della seduta in pianta
Sezioni dello schienale orientate e posizionate sulla curva generatrice
INPUT
sezioni dello schienale, posizione delle sezioni, altri parametri
Curve A,B,C,D
curva generatrice dello schienale (curva A)
Sezioni dello schienale
OUTPUT Curve A,B,C,D
14
Volume della struttura (netsurface)
Questo gruppo di componenti elabora la curva della seduta e ne estrae la curva sulla quale si attesterĂ lo schienale.
Le sezioni vengono regolarizzate ed orientate sulla curva generatrice.
Vengono elaborate le curve A, B, C e D, perpendicolari alle sezioni che andranno a concorrere alla creazione della Net Surface
Costruzione della Net Surface, con U e V rispettivamente sezioni e curve A,B,C,D
LO SCHIENALE
IL MODULO DI MODELLAZIONE
Lo schienale è una struttura molto più difficile da progettare parametricamente. A differenza della seduta, è necessaria una fase di visualizzazione del modello nella sua progettazione.
Come indicato, questo gruppo di operatori serve a creare una forma dalla quale verranno poi estratti i solidi che andranno a comporre gli elementi lignei strutturali.
La soluzione che abbiamo adottato è quella di suddividere la parametrizzazione in 3 moduli: il modulo di modellazione ha lo scopo di interpolare i dati di input - quali le sezioni dello schienale, la sezione di curva della seduta ed i vari parametri - per ottenere un modello 3D solido del volume occupato dalla seduta. Da questo volume verranno poi estratti dei solidi detti costole (verticali) e correnti che collegano le costole orizzontalmente. Questo modulo è detto elaboratore e oltre ad estrarre i solidi li interseca creando una struttura complessa nota come waffle. A differenza di un waffle canonico (che suddivide i volumi uniformemente), il nostro algoritmo permette all’utilizzatore di scegliere il numero e la posizione dei correnti e delle costole da utilizzare. Infine, come per la seduta, il modulo di stampa utilizza i solidi del waffle per ottenere delle curve 2D sul piano XY da mandare in stampa in macchina CNC.
Gli input principali sono le sezioni della curva: il sistema è pensato per poter creare le sezioni in modalità simmetrica o asimmetrica a seconda delle necessità. Una volta create le sezioni, si possono osservare le linee che andranno poi a creare la forma desiderata dalla viewport. Con il controllo dei punti delle curve è possibile gestire la forma a piacimento. Il passo successivo è quello di scegliere come si devono muovere le curve trasversali alle sezioni C e D. I parametri del controllo dei punti di incontro tra C e D e le sezioni servono a questo scopo. Questo sistema permette di rendere le curve più morbide o, al contrario di rafforzarne le forme se necessario. Alla conclusione del modulo di modellazione abbiamo dunque delle sezioni ordinate su una curva “generatrice” (curva A) e contemporaneamente le curve B, C e D che seguono l’andamento della curva A e toccano in un punto le sezioni.
Con un Net Surface disegnamo il volume dello schienale. È stato svolto molto lavoro nella scelta del comando da utilizzare in questa fase. Sono stati provati loft, sweep 1 rail e 2 rails ma il comando Net Surface offre un controllo nelle due direzioni U e V ed è l’unico che ci permette di utilizzare una serie infinita di curve in entrambe le direzioni. (Incrementare il numero di curve per controllare il volume dello schienale, potrebbe essere una futura richiesta da parte di Druetta per necessità di sviluppare una forma particolare richiesta da un cliente) Ultima opzione aggiunta è un semplice comando detto “condizione ai braccioli” che permette di scegliere due differenti opzioni per le curve C e D e per il loro ancoraggio sulla sezione iniziale e finale. La prima opzione lascia libero il vettore di inizio e fine curva, la seconda lo ancora al vettore normale al piano di appartenenza della curva del bracciolo. Oltre che a cambiare visivamente l’output legato alla Net Surface, questa condizione lascia ulteriore interpretazione all’utente permettendogli di creare forme più morbide o più decise.
15
IL DIAGRAMMA DELLO SCHIENALE
INPUT
Disegno delle sezioni Altri parametri
INPUT Posizione e numero elementi strutturali Altri parametri
Modulo di modellazione Interpola i dati di input e produce un modello 3D (netsurface)
Elaboratore
Suddivide il modello 3D in solidi orizzontali e verticali e ne costruisce gli incastri (waffle)
UTPUT SUALE
Modulo di stampa Elabora gli elementi strutturali creati e produce delle curve 2D posizionate sul piano XY per la successiva stampa
OUTPUT Curve 2D schienale
16
OUTPUT VISUALE
L’ALGORITMO COMPLETO: DIDASCALIA PAGINE 18 - 19 .01
Pianta seduta
.02
Sezioni schienale
.03
Sezioni orientate su curva A e curve A,B,C,D
.04
Quota automatica della seduta Larghezza x Profondità x Altezza
.05
Quota automatica dello schienale Larghezza x Profondità x Altezza
.06
Volume della struttura dalla quale si estrapoleranno le costole ed i correnti
.07
Corrente di base
.08
Costole intere. Si ottengono dall’estrusione della curva di sezione estratta dal volume (.06)
.09
Corrente 00 sagomato. In questo caso non vengono semplicemente usate le costole per creare gli incavi nel corrente, bensì viene creato un solido ad hoc che rappresenta il vuoto da sottrarre.
.10 Correnti Sagomati. Come per il corrente 00 vengono utilizzati dei solidi da sottrarre per creare il vuoto. Questo assicura la pulizia del modello .11 Costole sagomate. Anche in questo caso viene usata la stessa regola dei correnti. Se con i correnti abbiamo avuto buoni risultati, quelle delle costole sono stati ottimi. .12 Output visuale dell’elaboratore che riassume tutti i modelli compilati: costole, correnti, cerchiature e zoccoli. Può essere utilizzato per fare un bake dei modelli per la visualizzazione, lo studio del modello o la lavorazione manuale.
.13 Output del modulo di stampa: curve 2D da mandare in stampa alla macchina CNC. Sono state aggiunti anche dei pannelli che richiamano dati di input importanti come lo spessore dei correnti, quello delle costole, il numero di zoccoli e la loro dimensione.
L’ELABORATORE E’ diviso in due parti: la prima è composta da un set di operatori che servono a sezionare il volume ricavato dal modulo di modellazione in punti predefiniti e scelti dall’utilizzatore. Per farlo vengono utilizzati i parametri della curva dove si attestano i piani di taglio per le costole e la quota su Z per i correnti. La seconda parte invece è probabilmente la più complessa progettata in grasshopper per questo algoritmo. Questo gruppo di componenti elabora i solidi estratti dal volume (costole e correnti) ed ha lo scopo di incastrarli in una struttura a waffle. Per riuscire a generare una geometria per un waffle priva di errori, abbiamo speso parecchio tempo provando ad effettuare operazioni tra solidi e scegliendo operazioni di sottrazione piuttosto che operazioni di intersezione. Le due maggiori difficoltà sono state la pulizia del modello della costola o corrente e la ricerca del punto d’incontro tra le strutture del waffle. Il primo problema è stato risolto costruendo dei volumi “oversize” di sottrazione. In pratica questi volumi rappresentano il vuoto da sottrarre ai volumi pieni. Questi vengono estesi nelle direzioni desiderate per permettere tagli netti e puliti.
Una struttura a waffle necessita sempre di un punto nei quali ordito ed impalcato si incontrino a creare l’incastro. Prendiamo ad esempio una figura semplice. Dopo aver suddiviso un parallelepipedo in un numero arbitrario di elementi longilinei nelle due direzioni desiderate, è necessario capire in che modo l’ordito e l’impalcato si incastreranno nel volume intersecato. Nel nostro caso la grossa difficoltà è stata quella di trovare una linea intermedia tra le curve estratte dal volume sul piano di taglio del corrente in particolare, perché da questo taglio vengono estratti curve chiuse oblunghe. Abbiamo risolto il problema aggiungendo un parametro da settare manualmente per ogni sezione. L’utilizzatore deve semplicemente spostare questo parametro (identificato con un pallino nero) e muoverlo sulla sezione orientata tra le curve C e D creando la curva E.
Sappiamo che questa fase dell’algoritmo può essere migliorata, ed abbiamo già in mente dei cambiamenti da apportare per renderla più fluida e performante. Infine, il modulo di stampa è semplicemente composto da operatori che sezionano longitudinalmente - in mezzeria - i correnti e le costole. Abbiamo avuto ottimi risultati per le costole, mentre per i correnti abbiamo notato qualche curva “sporca” di piccoli errori facilmente aggiustabili in Rhinoceros. Per comodità costole e correnti sono ordinati sul piano XY e separati da uno spazio controllabile da uno parametro.
Si compilano quindi 2 Net Surface: una tra C ed E ed una tra D ed E. Quando il piano orizzontale seziona queste due Net Surface crea di fatto due curve che possono essere interpolate in un tween curve per ottenere una curva intermedia.
17
.07 .04
.01
.05
.03
.02 .06
GLI INPUT 18
IL MODULO DI MODELLAZIONE
.08
L'ALGORITMO COMPLETO
.10
.13
.11 .12
.09
L’ELABORATORE
IL MODULO DI STAMPA 19
20
L'OUTPUT VETTORIALE PER LA STAMPA 3D I PEZZI CON LA MACCHINA CNC Tramite l’utilizzo di Grasshopper e dell’algoritmo, come già detto in precedenza, riusciamo ad ottenere già le forme geometriche 2D che caratterizzano l’ossatura del nostro divano.
Lo scopo fondamentale dell’algoritmo è proprio quello di ottenere delle curve da poter stampare. Tutta la costruzione solida e di visualizzazione è propedeutica al fine di realizzare un oggetto finito da montare in breve tempo.
Una volta concluso l’algoritmo, ci siamo immaginati un modo per poter servire più semplicemente possibile il formato bidimensionale delle volumetrie che compongono la struttura del nostro custom couch. L’algoritmo infatti incarna un comando di creazione del disegno 2D dalle geometrie 3D selezionate.
Come specificato in precedenza il nostro intento è quello di offrire all’artigiano uno strumento di costruzione rapida secondo le sue necessità. Purtroppo ci siamo accorti fin da subito che sarebbe stato impossibile creare un programma in grado di produrre qualsiasi struttura richiesta.
In questo modo, qualsiasi sia la forma, raggi di curvatura delle shapes inclusi, la precisione del software permette che queste vengano estrapolate in vettoriale per poter essere caricate in una macchina a controllo numerico, e quindi tagliate. Siccome l’utente ha molta più dimestichezza con le forme vettoriali 2D ci è sembrato doveroso adoperarci per semplificare ulteriormente il suo lavoro e ottenere il massimo risultato con lo sforzo minore.
La nostra lettura quindi si è focalizzata sulla compilazione delle parti parametrizzabili che compongono la struttura. In altre parole, l’oggetto della stampa sarà una struttura personalizzata che potrà essere arricchita da aggiunte modellate ad hoc in Rhinoceros o scolpite manualmente dall’artigiano.
Per quanto riguarda la stampa 3D si è proceduto sezionando costole, correnti e cerchiature della seduta e spostandoli sul piano XY. Vicino agli output di bake (letteralmente cottura dell’oggetto, è il passaggio dall’output di grasshopper ad una geometria di rhinoceros) viene ricordata la dimensione ed il numero degli zoccoli che distanziano le cerchiature della seduta. L’artigiano poi può comodamente “cuocere” le curve dagli output di grasshopper, ordinarle ed ottimizzarle a suo piacimento in relazione alla dimensione dell’area di taglio. Le sezioni non sono numerate. È una cosa fattibile in grasshopper, ma dal momento che la numerazione (dopo il bake) è un passo comodo, veloce e personalizzabile in Rhinoceros, abbiamo preferito tralasciare questo punto in quanto l’artigiano ci fornirà maggiori dettagli (anche come feedback) dopo che avrà fatto pratica con il configuratore. Una volta stampate basterà montarle comodamente grazie alla struttura a waffle creata ad hoc.
21
22
L'OUTPUT GEOMETRICO PER LA VISUALIZZAZIONE IMPORTAZIONE DELLA GEOMETRIA IN 3DS MAX E RIFINITURE DEL MODELLO
Prima di iniziare lo sviluppo dell’algoritmo abbiamo pensato che lavorare in mesh ci avrebbe permesso, qualora avessimo deciso di sviluppare una piccola parte di still images nell’elaborato, di controllare meglio un eventuale output che sarebbe stato poi inserito in programmi come 3ds Max, che lavorano con queste entità geometriche. L’output di grasshopper ci restituisce infatti mesh che sono facilmente controllabili e non presentano divisioni casuali e triangolazioni eccessive.
Seguendo l’esempio del divano presente nella stanza Verde (presentato nelle pagine successive) vediamo come abbiamo cercato di intervenire per cercare di rendere i divani più foto-realistici possibili. Ilaria ad esempio nello sviluppo di questo divano decide di ricostruire i braccioli e la struttura delle costole che lo denotano. Una volta fatto il bake della geometria di grasshopper, interviene sulle due costole agli estremi dello schienale, rendendole più morbide e gonfie.
Bisogna notare che per la simulazione di tessuti e i rivestimenti dei nostri divani avremmo potuto ottenere un risultato particolarmente realistico tramite Mudbox e Marvelous Designer. Siccome la nostra tesi si incentra su un altro argomento abbiamo deciso di inserire una parte di visualizzazione che non utilizzasse tali strumenti di modellazione poly.
Considerando lo stile classicheggiante del divano e il suo sviluppo pressoché lineare, si decide di inserire un box della stessa dimensione delle piattine di base (in pianta) e della stessa altezza di piattine e distanziali, che sarà poi chamferizzato per renderlo più morbido e soffice alla vista. Per aumentare il senso di realismo viene applicato anche un leggero noise, un piccolo movimento su alcuni punti per cercare di rendere la geometria come un vero tessuto, con piccole pieghe e piccole imperfezioni che con un solo fall-off applicato ad un materiale, non si potrebbero ottenere. Per lo schienale si adotta la stessa tecnica. Selezionando alcuni gruppi di vertici, si applica il modificatore noise in modo da movimentarli in modo casuale, di pochi millimetri per fare in
modo che, una volta applicato il materiale con effetto di bump, riflessioni e mappa sul diffuse, questa risulti più foto-realistica. Grazie alla geometria esportata da grasshopper, già con suddivisione in quadmesh si decide di predisporre un doppio material ID per lo schienale così da poter applicare due materiali. Nella realtà l’artigiano potrebbe intervenire in questo modo ponendo un traverso sullo schienale all’altezza di questa nuova cucitura, punto nel quale si andranno poi ad ancorare i due tessuti provenienti dal piede e dalla sommità dello schienale del divano. Per aumentare il dettaglio del modello, vengono estrapolati alcuni edge della mesh, come i bordi dei braccioli, il bordo per la divisione dei materiali sullo schienale, creando poi un oggetto editabile a sezione rotonda che ricordi delle cuciture. I modelli tridimensionali dei divani presenti nelle pagine successive, come abbiamo visto, sono stati ottenuti tramite l’ausilio di Rhinoceros+Grasshopper e 3ds Max 2017, mentre i rendering, come vedremo, saranno ottenuti tramite Corona Render e V-Ray 3.6.
23
CONTESTUALIZZAZIONE STILL IMAGES SCELTA DELLE AMBIENTAZIONI Come durante un approccio ad un cliente, Druetta immagina un oggetto di design in un determinato contesto, anche noi vogliamo proporre diverse tipologie di interni e collocare al loro interno diversi modelli estrapolati dall’output del nostro algoritmo. Stanza Verde Il divano dai colori bianco-grigio è stato inserito in una stanza dai muri verde pastello: ci troviamo di fronte ad un’ambientazione tipica di una casa di campagna. Tutti gli elementi che compongono la stanza presentano colori delicati come il parquet in rovere chiaro, il soffitto bianco ricamato con boiserie in stile classico, il lampadario in vimini e la poltrona in tessuto grezzo chiaro. Il divano, rivestito dello stesso materiale della poltrona ha profili in legno e completa la scena adattandosi in modo armonioso al contesto. Stanza Viola L’ambiente molto elegante è illuminato da ampie vetrate talvolta chiuse da pesanti tendaggi color viola. Il divano presenta una linea classica ed è stato realizzato con di color rosa antico; perfetto per il living-room è stato addossato al muro tra elementi minimal ed un pouf viola. Presenta un rivestimento in tessuto piacevole al tatto, morbido e durevole con intarsi dorati
sullo schienale e sulla seduta, mentre sui poggioli vi è un cordoncino più spesso dello stesso materiale. Stanza Arancio L’appartamento si trova al quindicesimo piano di un grattacielo londinese. Il living-room, che si affaccia sulla città con un terrazzo panoramico, presenta uno stile moderno. A far da sfondo al divano di design vi è una parete in mattoni faccia a vista che, assieme al parquet in noce, rende l’ambiente molto caldo e ospitale. Il divano asimmetrico si presenta più alto da un lato; è stato realizzato in stoffa chiara sulla seduta e sulla parte anteriore dello schienale, mentre nella parte posteriore e alla fine dei bracioli è stata usata pelle nera. Stanza Blu La stanza vuole riproporre l’idea di un’abitazione in località marina. In questa atmosfera luminosa e allo stesso tempo silenziosa vi è un divano asimmetrico posizionato contro il muro. La caratteristica principale non riguarda solo lo schienale, asimmetrico, ma coinvolge anche la seduta che in questo caso è trapezoidale. Nella stanza, il blu del quale è rivestito il divano,è il colore protagonista.
Stanza Mattoni I due divani gemelli presenti nella scena sono stati immaginati con tessuto ciniglia color verde bottiglia. Il loro stile eclettico che si adatta benissimo al clima della stanza ricorda le sedute degli antichi romani. Qui, il clima cupo composto dall’arredo etnico, dal lampadario scultoreo e dalle pareti in mattoni faccia a vista sono contrastati dall’eleganza dei divani. Le loro geometrie curvilinee sono marcate dalle cuciture dorate sugli schienali. Stanza Rusty In un’ambientazione vintage con il parquet e muri rovinati dal tempo si trova un divano di design dalla forma elegante. Il divano con uno schienale a “zainetto” è rivestito da una stoffa morbida al tatto di colore marroncino e cuciture rosa cipria. Il contrasto tra la modernità legata alla fattezza del divano e l’antico della stanza è marcato ulteriormente dagli elementi di arredo: libri usati e già letti, un tavolino ricavato da un euro pallet, un quadro e piante verdi recise contenute in vasi di vetro.
25
26
27
28
29
30
31
CONCLUSIONI
Botteghe Digitali ha cambiato l’approccio al lavoro grazie a degli strumenti tecnologici, hadware e software che hanno modificato velocizzato e migliorato alcune delle fasi fondamentali del rapporto con il cliente e con gli oggetti su cui l’artigiano interveniva. Sicuramente, tramite l’approccio parametrico, le tempistiche per la concezione di un arredo su misura si sono velocizzate. Non è da sottovalutare però il supporto fornito per il primo periodo di modo che l’utente (l’artigiano) potesse sfruttare a pieno questo strumento informatico senza incappare in loop temporanei dispendiosi. Un sentito grazie va anche a Gabriele che essendo giovane e di mentalità aperta, è riuscito a comprendere al volo alcuni tratti e funzionamenti del software che in altri casi avrebbero richiesto molto più tempo. Siccome Druetta possiede anche un dominio internet, il nostro consiglio, per un futuro non
troppo lontano, è quello di implementare all’interno del proprio spazio web un configuratore parametrico (vedi ad esempio https://www.shapediver.com/) che permette ad eventuali visitatori/utenti, di interagire con un algoritmo basilare e poter scegliere alcuni parametri che ufficialmente verrebbero comunicati durante la prima fase del lavoro, ovvero l’incontro con il cliente. Oltre ad aumentare ulteriormente la produttività e la velocità di concepimento di un prodotto, questo potrebbe dare il via ad una serializzazione del processo rendendo immediato il collegamento designer-cliente, parametri base-prodotto finito. Il cliente potrebbe scegliere l’ingombro, la finitura e alcune delle caratteristiche relative alla geometria (possiamo pensare a problematiche relative allo spazio di un alloggio o di una mansarda, le altezze ecc..) mentre a Druetta rimarrebbe tutto il resto,
la modifica di questi parametri immessi dal cliente (rimanendo in una certa tolleranza, l’andamento generale della geometria e l’armonizzazione del prodotto finito. Possiamo solo augurare a Druetta che questo lavoro da noi concluso possa aiutarli nello sviluppo di forme semplici o complesse che dopo anni di artigianato possano far stupire piacevolmente i loro clienti e che possano suscitare in loro emozioni legate agli spazi che denotano le loro abitazioni. Oltre ad aver cambiato l’approccio che avevamo al mondo parametrico, Il lavoro portato avanti con il MADI, Botteghe Digitali, lo IUAV e la Tappezzeria Druetta ci ha insegnato a lavorare per step. L’utente finale, un artigiano - non un tecnico - ha specifiche necessità che devono essere razionalizzate il più possibile per riuscire a manovrare uno strumento efficace con il minor dispendio di energie e tempo possibile. Le frequenti interazioni con l’artigiano ci hanno permesso esplicitare sotto forma di operazioni matematiche un processo che dopo anni ed anni di lavoro manuale viene svolto quasi automaticamente - e di ripensare più volte alle operazioni effettuate - migliorando mese dopo mese tutta una serie di sequenze di comandi che permetteranno all’utente di svolgere il suo lavoro in maniera autonoma e semplificata.
33
IMMAGINI E BIBLIOGRAFIA
• Copertina - Elaborazione modello 3D Divano Custom • Introduzione - Rielaborazione di Foto Bottega Artigiana Tappezzeria Druetta 17/06/2017 Riccardo Davide Zerbinati, Località: Moretta (CN) • Pg.2 - Foto Bottega Artigiana Tappezzeria Druetta 19/09/2017 - Riccardo Davide Zerbinati, Località: Moretta (CN) • Pg.4 - Foto Bottega Artigiana Tappezzeria Druetta 17/06/2017 - su gentile concessione di Tappezzeria Druetta, Località: Moretta (CN) • Pg.6 - Sketch Divano Verde e disegno tecnico Divano Giallo / rielaborazione di modello SketchUp fornito / immagini fasi di montaggio dei divani utilizzati come riferimento - su gentile concessione di Tappezzeria Druetta, Località: Moretta (CN) • Pg.8 - Immagine Divano Rosso e parte di modellazione su Grasshopper / Immagine Divano Verde, Immagine struttura divano Verde e parte di algoritmo con struttura in modellazione • Pg.10 - Immagine Divano Giallo, Immagine struttura divano Verde e parte di algoritmo con struttura in modellazione • Pg.12 - Input / Elaboratore / Output alcune immagini tratte dall’algoritmo che permettono di capire quello che si può progettare con questo strumento • Pg.13 - Diagramma per l’ottenimento della seduta • Pg.14 - Input per la generazione dello
• •
•
•
• • • • • •
schienale del divano custom. Screenshot da grasshopper Pg.16 - Diagramma per l’ottenimento dello schienale Pg.18/19 - Algoritmo completo, immagini estrapolate da grasshopper che indicano in ogni blocco del processo matematico, la parte di struttura che si può ottenere. Pg.20 - Render struttura lignea del divano, output shapes vettoriali per stampa 3D (o macchina CNC), immagine pezzi in legno tagliati con macchina CNC, immagine modello fisico montato in scala 1:10 Pg.22 - Screenshot per processo di lavorazione dell’output geometrico del divano da Grasshopper a 3ds Max per la visualizzazione. Pg.24 - Foto Bottega Artigiana Tappezzeria Druetta - su gentile concessione di Tappezzeria Druetta, Località: Moretta (CN) Pg.26 - Rendering contestualizzazione Divano Custom 1 - Stanza Verde: Ilaria Fantin 3dsMax + Corona Pg.27 - Rendering contestualizzazione Divano Custom 2 - Stanza Viola: Ilaria Fantin - 3dsMax + Corona Pg.28 - Rendering contestualizzazione Divano Custom 3 - Stanza Arancio: Marco Radin 3dsMax + Corona Pg.29 - Rendering contestualizzazione Divano Custom 4 - Stanza Azzurra: Marco Radin 3dsMax + V-Ray Pg.30 - Rendering contestualizzazione Divano
• • • •
Custom 5 - Stanza Mattoni: Riccardo Davide Zerbinati - 3dsMax + V-Ray Pg.31 - Rendering contestualizzazione Divano Custom 6 - Stanza Rusty: Riccardo Davide Zerbinati - 3dsMax + Corona Pg.32 - Foto di gruppo da sinistra: Marco Radin, Gabriele Druetta, Ilaria Fantin, Riccardo Davide Zerbinati, Località: Moretta (CN) Pg.33 - Configuratore Parametrico Shape Driver (www.https://www.shapediver.com/) Pg.34 - Rielaborazione da Shutterstock Images
Arturo Tedeschi, AAD Algorithms-Aided Design, Parametric Strategies using Grasshopper, Edizioni Le Penseur, 2014 Arturo Tedeschi, Architettura Parametrica – Introduzione a Grasshopper, Edizioni Le Penseur, 2011
35