Informazioni generali

Domande

Il compito consiste nella costruzione in Python di alcuni elaborati relativi alla tricostruzione geometrica di uno schema Leonardesco a pianta centrale. Le immagini di alcuni schizzi di Leonardo e/o di ricostruzioni con modelli sono contenute nell’archivio zip all’indirizzo http://www.dia.uniroma3.it/~paoluzzi/web/did/graficacomp/2010/doc/leonardo.zip

Lo studente dovrà scegliere UNA (1) delle immagini e allegarne una copia al suo archivio. Con questo atto indicherà che il suo progetto si riferisce al modello rappresentato nell’immagine.

  1. Scomporre la planimetria 2D in elementi geometrici semplici (quadrati, triangoli, archi di circonferenza, etc.) a cui far corrispondere dei costruttori elementari definiti dallo studente oppure primitivi (o di libreria) nel linguaggio. Assemblare tali elementi per costruire uno schema 1D della planimetria;

  2. realizzare una analoga scomposizione della vista frontale del modello;

  3. costruire un complesso poliedrale gerarchico 2D della planimetria utilizzando i costrutturi primitivi MKPOL, MAP, STRUCT;

  4. realizzare una analoga costruzione 2D della vista frontale del modello;

  5. costruire un modello 3D utilizzando primitive adeguate di dimensione intrinseca 2D (archi di cilindro, settori sferici);

  6. costruire un modello solido 3D.

Suggerimenti

Lo studente ricordi che, utilizzando MAP con funzioni coordinate trigonometriche per costruire una circonferenza, si può applicare la funzione parziale MAP([fx,fy]) ad un dominio 1D di lunghezza adeguata (non necessariamente 2*PI), e costruire un arco di circonferenza corrispondente …

La stesso metodo consente di costruire segmenti di cerchio, settori sferici, settori cilindrici. Si osservi ad esempio il risultato della applicazione delle funzioni coordinate della sfera sul dominio [0,PI/2] x [0,PI].

Può dunque essere conveniente la costruzione di operatori che accettino tra i dati di ingresso il valore iniziale e finale di ogni intervallo usato come (componente del) dominio dell’operatore.