A ciascuna delle domande corrisponde una frazione del punteggio complessivo. Si consiglia quindi di rispondere al maggior numero di esse.
I compiti dovranno essere inviati per email all’indirizzo apaoluzzi@gmail.com, con intestazione [grafica 2010] compito 1
I file di ogni studente dovranno essere contenuti dentro un archivio zip, denominato con il codice-studente di Roma Tre (es 123456.zip). Gli studenti ancora sprovvisti di codice lo invieranno come cognome.zip
Lo studente dovrà realizzare piccoli programmi denominati come segue, e per ciascuno scrivere alcune righe di documentazione in un file html corrispondente:
<risposta-1>.py,
<risposta-2>.py, etc.,
<doc-1>.html,
<doc-2>.html, etc.
Ogni file deve contenere un commento recante cognome, nome, matricola nella prima riga
Ogni file <risposta-i>.yy deve terminare con una istruzione VIEW() funzionante. Se questa non apre una finestra corrispondente al modello richiesto, la risposta non sarà presa in considerazione.
Il termine di consegna è tassativo. I compiti inviati dopo la scadenza non saranno presi in considerazione.
l’ambiente grafico da utilizzare (per chi non lo avesse già installato) è disponibile all’indirizzo http://www.dia.uniroma3.it/~paoluzzi/plasm502/download/plasm_314_2/
Ogni variazione dalle presenti specifiche sarà adeguatamente sanzionata in termini di punteggio.
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.
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;
realizzare una analoga scomposizione della vista frontale del modello;
costruire un complesso poliedrale gerarchico 2D della planimetria utilizzando i costrutturi primitivi MKPOL, MAP, STRUCT;
realizzare una analoga costruzione 2D della vista frontale del modello;
costruire un modello 3D utilizzando primitive adeguate di dimensione intrinseca 2D (archi di cilindro, settori sferici);
costruire un modello solido 3D.
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.