Rendering. Dove si descrivono i principali metodi di alto livello utilizzati per ottenere una immagine a partire da una descrizione degli oggetti 3D

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Rendering. Dove si descrivono i principali metodi di alto livello utilizzati per ottenere una immagine a partire da una descrizione degli oggetti 3D"

Transcript

1 Rendering Dove si descrivono i principali metodi di alto livello utilizzati per ottenere una immagine a partire da una descrizione degli oggetti 3D Introduzione Rendering di mesh poligonali 3D Viewing Clipping Shading Rimozione delle facce nascoste Scan conversion La rendering pipeline Rendering di altre descrizioni

2 Grafica al Calcolatore Rendering - 1 Introduzione Modeling (modellazione) e Rendering sono i due stadi principali della pipeline grafica. Fin ora abbiamo parlato di modellazione. Il termine rendering indica la serie di algoritmi, geometrici e non, a cui si sottopone una data descrizione di una serie di oggetti per ottenere una immagine Le descrizioni possono essere: mesh poligonali superfici parametriche CSG volumetriche Per ogni descrizione esistono tecniche ad hoc. Ci occuperemo nel dettaglio di mesh poligonali, perché: sono la rappresentazione più diffusa le altre rappresentazioni si possono ricondurre a questa.

3 Grafica al Calcolatore Rendering - 2 Rendering di mesh poligonali L ingresso è una lista di poligoni, e l uscita è una immagine, ovvero una matrice di pixels a ciascuno dei quali è associato un colore. Rendering Modeling front end Geometric processing back end Rasterization Display Transformations Clipping Projection Hidden surface removal Shading Scan conversion La primitiva geometrica che viene processata sono i poligoni Tuttavia il processo può essere object driven oppure image driven, a seconda che il ciclo più esterno sia sui poligoni o sui pixel (Angel pg. 284).

4 Grafica al Calcolatore Rendering - 3 3D Viewing Vedremo come vengono gestite dal punto di vista geometrico le trasformazioni 3D e la proiezione prospettica. In molti sistemi grafici (e OpenGL non fà eccezione) il processo coinvolge diversi sistemi di riferimento e trasformazioni tra di essi. Uno di questi è la proiezione. Il motivo dell esistenza di diversi sistemi di riferimento sarà chiaro nel seguito.

5 Grafica al Calcolatore Rendering - 4 Sistemi di coordinate Spazio Locale (local space): è lo spazio dove ciascun singolo oggetto viene definito. Si chiama anche spazio oggetto (object space) o spazio di modellazione (modeling space) Spazio Mondo (world coordinate system): è lo spazio dove la scena o l oggetto completo è rappresentato. Spazio Vista (view space): è un sistema di riferimento centrato sulla telecamera virtuale, che definisce il volume (o frustum) di vista. Si chiama anche camera coordinate system o empheye coordinate system. Spazio 3D-Screen: è lo spazio di vista canonico, che si ottiene trasformando (con deformazione) il volume di vista (frustum) in un parallelepedo. Molte operazioni del processo di rendering avvengono qui (in 3D normalized device coordinates). Spazio Immagine è il sistema di coordinate della immagine finale (pixel). Si ottiene proiettando ortogonalmente il volume di vista canonico e trasformando le coordinate 2D.

6 Grafica al Calcolatore Rendering - 5 Proiezione prospettica Y image plane X P image P C pinhole Z object d Il modello geometrico più semplice della formazione dell immagine è la pinhole camera (letteralmente: macchina fotografica a foro di spillo.) Sia P un punto della scena, di coordinate (x, y, z) e sia P la sua proiezione sul piano vista (o immagine), di coordinate (x, y, z ). Se d è la distanza del foro (o centro di proiezione) C dal piano immagine (distanza focale), allora dalla similarità dei triangoli si ottiene: x d = x z e y d = y z (1)

7 Grafica al Calcolatore Rendering - 6 e quindi x = dx z y = dy z z = d (2) Si noti che l immagine è invertita rispetto alla scena, sia destra-sinistra che sopra-sotto, come indicato dal segno meno. Queste equazioni definiscono il processo di formazione dell immagine che prende il nome di proiezione prospettica. In forma matriciale si può effettuare la proiezione prospettica, applicando ai punti P rappresentati in coordinate omogenee ( P = (x, y, z, 1)) la matrice di proiezione prospettica 3 4: M = /d 0 dove d è la distanza tra C ed il piano vista (distanza focale). Si ottiene cosìuna tripla P = (x, y, z/d), che rappresenta in coordinate omogenee il punto di coordinate cartesiane P = ( x, y ). P è la proiezione di P sul piano (z/d) (z/d) vista.

8 Grafica al Calcolatore Rendering - 7 La divisione prospettica (o normalizzazione proiettiva) indica il passaggio da coordinate omogenee a coordinate cartesiane e consiste nel dividere per l ultima coordinata omogenea e rimuovere l 1 rimanente. Da notare che nella proiezione si perde l informazione di profondità di un punto, ovvero punti con z iniziale di partenza diversa vengono proiettati nello stesso punto sul piano proiettivo Vi è modo di recuperare tale informazione? Vedremo nel seguito che sarà molto importante poter stabilire dati due punti proiettati nella stessa posizione quale dei due ha profondità (distanza dal piano vista) minore

9 Grafica al Calcolatore Rendering - 8 Spazio vista Lo spazio vista (o view space) è un sistema di coordinate centrato sulla telecamera con l aggiunta della specifica di un volume di vista: un view point C, che stabilisce la posizione dell osservatore nel world space e definisce il centro della proiezione. un sistema di riferimento desctrorso UVN centrato sull osservatore, che definisce la direzione di vista - N e la direzione verticale V (U non ha scelta e punta alla destra dell osservatore). un piano vista (view plane), ortogonale a N e distante d da C, sul quale viene proiettata la scena un volume di vista (o frustum), definito da due piani di taglio (clipping) paralleli al view plane, il near plane ed il far plane. L intersezione del frustum con il piano vista definisce la finestra di vista

10 Grafica al Calcolatore Rendering - 9 far plane y V view plane w near plane z N C U x d θ n h f Il frustum è definito dall angolo di vista (verticale) θ e dal fattore di aspetto a = w/h della finestra di vista.

11 Grafica al Calcolatore Rendering - 10 In linea di principo, nello spazio vista si potrebbe effettuare la proiezione prospettica, applicando ai punti P la matrice la matrice di proiezione prospettica vista prima. si noti che abbiamo messo il piano vista davanti al centro di proiezione, ma l asse Z punta indietro, quindi le equazioni della proiezione prospettica rimangono inalterate. La proiezione viene effettuata in modo più contorto (apparentemente) di quello appena visto introducendo la trasformazione prospettica (che porta nello spazio 3D-Screen) per poter aggiungere informazione di profondità ai punti proiettati.

12 Grafica al Calcolatore Rendering - 11 Spazio 3D-Screen Trasformazione prospettica Invece di proiettare i punti, applichiamo loro la trasformazione 3D specificata dalla seguente matrice (parente della matrice di proiezione prospettica a ); M = /d 0 Si ottiene cosìuna 4-pla P = (x, y, z, z/d), che dopo la divisione prospettica sortisce P = ( x, y, d) (z/d) (z/d) Le prime due componenti di P sono le coordinate del punto proiettato. La terza coordinata è inutile, nel senso che è uguale a d per tutti i punti proiettati (infatti il piano vista ha equazione z = d). Si osservi che non viene etteffuata alcuna proiezione, anche se le coordinate del punto proiettato prospetticamente sono disponibili. a Angel chiama questa matrice di trasformazione prospettica

13 Grafica al Calcolatore Rendering - 12 Si vuole costruire una trasformazione che abbia le stesse coordinate x ed y della proiezione standard, ma che metta nella coordinata z un valore dal quale si possa risalire all ordine di profondità dei punti. A tal scopo sostituiamo la matrice M vista prima con la seguente matrice (che prende il nome di matrice di trasformazione prospettica b ): M = α β 0 0 1/d 0 Applicando M a P si avrà quindi la 4-pla (x, y, αz + β, z/d) che, dopo la divisione prospettica fornisce P = ( x, y, dα dβ/z) (z/d) (z/d) Le prime due componenti sono identiche alla proiezione standard, ma la terza componente (pseudo-profondità) z s = dα dβ/z. per valori opportuni di α e β è una funzione monotona di z. La relazione tra z e z s è non lineare, ma l ordinamento sulla profondità è conservato. b Angel la chiama matrice di normalizzazione prospettica

14 Grafica al Calcolatore Rendering - 13 Volume di vista canonico La trasformazione (normalizzazione) prospettica mappa il frustum di vista in un parallelepipedo (per αeβ opportuni) chiamato volume di vista canonico. Gli oggetti vengono distorti di conseguenza. Proiettando questo parallelepipedo ortogonalmente (ovvero si elimina la terza coordinata cartesiana, z s nel nostro caso) si ottiene la proiezione prospettica desiderata. y y s z x z s x s sintetizzando, la proiezione prospettica viene realizzata in due fasi: proiezione prospettica = trasformazione prospettica + proiezione ortografica Se invece si voleva effettuare una proiezione ortogonale (ortografica), basta sostituire la trasformazione prospettica con una trasformazione (affine) che mappa il volume di vista (un parallelepipedo in questo caso) nel volume di vista canonico.

15 Grafica al Calcolatore Rendering - 14 Diversi sietemi (PHIGS, OpenGL, Renderman,...) adottano convenzioni diverse per le dimensioni del volume di vista canonico. In OpenGL il volume di vista canonico un cubo di lato unitario, in cui il far plane ha equazione z s = 1, ed il near plane z s = 1 Vogliamo dunque scegliere α e β in modo che l intervallo di profondità z [n, f] venga mappato in z s [ 1, 1]. z= f y z= n y=+1 y z z piano immagine piano immagine y= 1 z=+1 z= 1 Nota: il piano vista si prende coincidente con il near plane, dunque d = n.

16 Grafica al Calcolatore Rendering - 15 Una tale trasformazione è implementata dalla seguente matrice di trasformazione prospettica con M = c/a c α β α = f + n n f β = 2fn n f c = cot(θ/2) Si può verificare trasformando i vertici del frustum di vista. Questa matrice 4 4 viene chiamata anche (in terminologia OpenGL) matrice di proiezione (projection matrix) anche se, a rigore, non effettua una proiezione dello spazio 3D, ma una sua trasformazione. Si noti che abbiamo sempre considerato la trasformazione operata da una matrice in coordinate omogenee composta da: moltiplicazione matrice-vettore seguita da divisione prospettica. Risulterà utile per il clipping separare le due operazioni (vedi pipeline OpenGL).

17 Grafica al Calcolatore Rendering - 16 Spazio Immagine La trasformazione nello spazio immagine si applica dopo la proiezione ortografica. Dipende dalle caratteristiche del display (in senso ampio) Ai punti proiettati del 3D screen viene applicata una matrice di trasformazione affine che : ripristina il fattore di aspetto corretto per l immagine (distorto dalla trasformazione prospettica) scala e trasla l immagine per aggiustarla alla finestra di vista corrente (es )

18 Grafica al Calcolatore Rendering - 17 Clipping Il clipping consiste nella rimozione dei poligoni che cadono fuori dal volume di vista. avviene nello spazio 3D screen: infatti lavorando con il volume di vista canonico, l operazione risulta semplificata, poiché le facce del volume di vista sono ortogonali. I due principali algoritmi di clipping sono (non li vedremo, ma sono spiegati nell Angel, a pg. 288 e seguenti): Cohen-Sutherland Liang-Barsky Esempio di uso del near plane per vedere all interno degli ogetti. c Alan Watt

19 Grafica al Calcolatore Rendering - 18 Shading Gli algoritmi di shading consentono di colorare i poligoni, ovvero di assegnare un colore ai pixels sui quali il poligono viene proiettato. A monte serve un modello di riflessione locale consente di asseganre un colore a ciscun punto di una superficie (3D). Il modello di riflessione locale è trattato in un altro capitolo. Qui diciamo solo che per calcolare il colore di un punto servono: la normale M della superficie nel punto, il vettore V che punta verso l osservatore (direzione di vista) ed il vettore L che punta verso la sorgente luminosa.

20 Grafica al Calcolatore Rendering - 19 In una mesh poligonale a cisascun vertice di un poligono è associata una normale M. Ogni faccia ha una lista di vertici e di normali di vertice (quindi lo stesso vertice può essere associato a normali diverse) Tipicamente: Se la superficie da rappresentare è poliedrica allora ciascun vertice di una faccia ha la medesima normale (la normale della faccia). Se invece la mesh è una approssimazione di una superficie interpolante, in ciascun vertice mettiamo la normale alla superficie. Comunque possiamo mettere quello che vogliamo: la normale di vertice è non è un concetto definito matematicamente. dunque l applicazione del modello di riflessione avviene sui vertici dei poligoni (nello spazio vista) quelli che vediamo sono essenzialmente schemi di interpolazione di valori calcolati sui vertici dei poligoni, che si applicano durante il processo di scan-conversion del poligono.

21 Grafica al Calcolatore Rendering - 20 Flat shading Il flat shading è il più semplice di tutti: si colora una faccia con un colore. Se la normale fosse definita per la faccia, si colorerebbe il poligono con il colore ottenuto usando la sua normale M ed il modello di riflessione locale. Poiché la normale è definita sul vertice, si calcola il colore su un solo vertice del poligono (il primo che si incontra) usando il modello di riflessione locale, e si applica quel colore a tutto il poligono. Nota: Per una suprficie poliedrica, se il punto di vista e la sorgente luminosa sono lontani, i vettori V ed L sono costanti su una faccia, quin di è corretto, secondo il modello di riflessione locale, assegnare un solo colore a tuta la faccia.

22 Grafica al Calcolatore Rendering - 21 Vantaggi: semplicità e velocità Svantaggi: Si percepiscono distintamente i poligoni. Questo effetto è indesiderato quando la mesh rappresenta una superficie continua. La normale, infatti, varia e quindi anche il colore associato a triangoli vicini. c Alan Watt Anche nel caso di superfici piatte, se osservatore e luce sono vicini, mentre M è costante su tutta la superficie, V ed L cambiano da triangolo a triangolo, quindi i triangoli hanno colori diversi, e si può percepire la transizione.

23 Grafica al Calcolatore Rendering - 22 c Alan Watt

24 Grafica al Calcolatore Rendering - 23 Gouraud shading È la tecnica di shading interpolative più antica, e la più semplice (veloce) che produce una variazione dell intensità atraverso il poligono. si considerano le normali di vertice; si calcola il colore in ogni vertice usando il modello di riflessione locale; si calcola l intensità luminosa dei punti interni al poligono con interpolazione bilineare (vedi esempio di rasterizzazione in fondo) Se la normale alla superficie soggiacente non è disponibile, si può calcolare una normale di vertice fittizia prendendo la media delle normali dei poligoni che condividono il vertice (idea di Gouraud); Nota: nel caso di una superficie poliedrica, in cui le normali ai vertici di ciascuna faccia sono le stesse, si ha lo stesso effetto del flat shading, visto che ai vertici del poligono viene associato il medesimo colore.

25 Grafica al Calcolatore Rendering - 24 Vantaggi: attenua il salto di colre tra facce adiacenti, è semplice e veloce (è solo poco più oneroso di flat). Svantaggi: Non elinina completamente la percezione dei poligoni e non rende bene le riflessioni speculari (highlights). c Alan Watt

26 Grafica al Calcolatore Rendering - 25 c Alan Watt

27 Grafica al Calcolatore Rendering - 26 Phong shading Maggiore realismo si ottiene con il metodo di interpolazione di Phong (da non conforndersi con il modello di riflessione locale di Phong). Le normali dei vertici vengono interplate all interno del poligono. La normale interpolata viene usata nel modello di riflessione locale per calcolare il colore dei punti interni al poligono. Il metodo cattura le riflessioni speculari poiché usa il modello di riflessione locale anche sui punti interni del poligono.

28 Grafica al Calcolatore Rendering - 27 Vantaggio: buon realismo. Svantaggi: è circa 5 volte più lento di Gouraud. Per questo spesso confinato all uso off-line. bisogna tirarsi dietro le normali fino alla fase di scan-conversion (quando vengono dipinti i poligoni). Infatti OpenGL non lo supporta per questo motivo: le normali vengono abbandonate dopo la proiezione prospettica c Alan Watt

29 Grafica al Calcolatore Rendering - 28 c Alan Watt

30 Grafica al Calcolatore Rendering - 29 Tecniche di miscelazione Vediamo ora alcune tecniche di miscelazione (compositing) di colori. Per pirma cosa come si rappresenta il colore di un pixel? Ci sono essenzialmente due modi: 1. Indicizzato: viene costruita una tabella di colori predefiniti (la cosiddetta palette); ad ogni pixel si può quindi associare semplicemente un numero intero che indica una posizione nella palette. In genere la dimensione della palette è di 256 elementi a cui corrisponde un frame-buffer a 8-bit di profondità di colore. 2. True color: viene associato ad ogni pixel direttamente un colore parametrizzato dalla sue componenti RGB. In genere ciascuna componente può assumere 256 valori, da 0 a 255; si ha quindi un frame-buffer a 24-bit di profondità di colore. La rappresentazione con RGB non è l unica parametrizzazione di un colore; è quella usata dalle OpenGL, quindi non ne vediamo altre. Nelle OpenGL si possono specificare le componenti RGB con valori float tra 0 e 1 In genere si può associare una quarta componente ad ogni pixel, detta α. Si ha a che fare in tal caso con un frame-buffer RGBA a 32-bit; la componente α può essere usata per esempio per specificare un valore di opacità del pixel.

31 Grafica al Calcolatore Rendering - 30 Opacità In generale si può associare ad un punto oltre all intensità di colore calcolata anche un coefficente di opacità k o compreso tra zero ed uno Se in un punto k o è pari a uno, allora il punto è completamente opaco e si effettua uno shading normalmente con le tecniche che vedremo in questo capitolo. Se k o è pari a zero allora in quel punto l oggetto è completamente invisibile; lo shading di quel punto non conta e bisogna vedere come è colorato il punto che sta otticamente dietro Per valori di k o intermedi bisogna fare un blending del colore I associato a quel punto dal modello di shading ed il colore dietro.

32 Grafica al Calcolatore Rendering - 31 Esempio: si supponga che per un dato pixel si sia stabilito un colore C dopo aver disegnato una serie di poligoni in ordinamento del pittore; si supponga che disegnando un nuovo poligono la formula di shading assegni intensità I per quel pixel dovuta al nuovo poligono e che tale pixel risulti di opacità k o. Allora il dato pixel assumerà un colore pari a C = (1 k o )C + k o I Per inciso, avere poligoni con opacità diversa da 1 è facile da gestire con un algoritmo di rimozione delle facce nascoste tipo BSP (cioè un algoritmo di depth-ordering); è molto più complesso con uno z-buffer (si fa rendendo di sola lettura lo z-buffer in corrispondenza ai poligoni traslucidi, Angel pg. 400) In generale l opacità viene modificata con una texture (vedi dopo)

33 Grafica al Calcolatore Rendering - 32 Depth cueing Una tecnica usata per dare un senso di profondità all immagine è la seguente Si stabilisce un colore di depth-cue pari a C f Se lo shading fornisce il colore C s per il pixel il colore C s con cui si colora il pixel è allora data dalla formula C s = (1 z s )C s + z s C f ovvero si interpola linearmente (usando la profondità nello spazio 3D screen) tra la vera intensità data dallo shading e l intensità di depth-cue. In tal modo oggetti vicini appaiono colorati normalmente (o quasi), oggetti lontani invece sfumano in C f Se C f è nero, per esempio, gli oggetti tendono a sparire man mano che si avvicinano al piano di far clipping (z s = 1) Se C f è bianco, invece, si ha un effetto nebbia Si può anche usare una funzione di z s per avere effetti diversi.

34 Grafica al Calcolatore Rendering - 33

35 Grafica al Calcolatore Rendering - 34 Rimozione delle facce nascoste Dopo che i poligoni hanno attraversato tutte le trasformazioni geometriche e sono stati tagliati (clipping), prima di poterli disegnare dobbiamo risolvere il problema dela rimozione di quelli che non sono visibili dall osservatore. Problema: dati un insieme di poligoni in 3D ed un punto di vista, si vogliono disegnare solo i poligoni visibili (o porzioni di essi). Ogni poligono si assume essere piatto ed opaco. Vi sono essenzialmente due approcci: object-space: l algoritmo lavora sui poligoni stabilendo relazioni di occlusione reciproca. Il costo è quadratico nel numero dei poligoni. Però la precisione è elevata (precisione macchina). image-space: l algoritmo stabilisce occlusioni a livello del pixel. è più veloce ma la precisione è limitata.

36 Grafica al Calcolatore Rendering - 35 Back-face culling Non è un algoritmo generale di rimozione di facce nascoste, ma solo una euristica utile per eliminare subito poligoni ovviamente invisibili. viene effettuato nello spazio vista (o telecamera) l eliminazione delle facce posteriori (o back-face culling), elimina i poligoni che, a causa della loro orientazione, non possono essere visti. Se V è la direzione di vista (punta verso l osservatore) ed N p è la normale al poligono, è facile rendersi conto che il poligono è visibile solo se: N p V > 0 Nota: se la scena è composta da un solo solido convesso, il culling risolve anche il problema della eliminazione delle facce nasoste.

37 Grafica al Calcolatore Rendering - 36 Depth-Buffer È un algoritmo image-space, ma processa un poligono alla volta Opera nel 3D screen space Fa parte del processo di rasterizzazione Il depth-buffer o z-buffer è una matrice (grande come l immagine) che contiene, per ciascun pixel, il più piccolo valore di profondità (z) incontrato finora. Durante il rendering, per ciascun poligono che viene processato: si calcola la profondità (z) dei punti interni con interpolazione della z dei vertici (come l intensità in Gouraud shading). se la z del pixel è inferiore a quella contenuta nello z-buffer, allora la sua intensità viene scritta nell immagine e la z viene viene aggiornata. Vantaggio: semplicità di implementazione Svantaggio: occupazione di memoria: servono almeno bits per pixel per avere una discretizzazione accettabile delle profondità.

38 Grafica al Calcolatore Rendering - 37 Depth-sort Algoritmo Object-space Idea: si disegnano i poligoni dal più lontano al più vicino, così quelli lontani vengono sovrascritti da quelli più vicini (back-to-front rendering). Due problemi: come ordinare i poligoni e cosa fare se si sovrappongono. Non sempre è possibile ordinare i poligoni per profondità. Allora bisogna spezzarli. Algoritmo del pittore: i poligoni vengono ordinati in una lista in base al vertice di massima distanza dall osservatore (o pseudo-profondità). si effettua il rendering dei poligoni della lista, dal più lontano al più vicino. La sovrapposizione non è considerata (si possono di disegnare immagini sbagliate).

39 (! $#" Grafica al Calcolatore Rendering - 38 Depth sort: nell algoritmo di depth sort, dopo avere ordinato i poligoni in base al vertice di massima distanza, vengono risolte le ambiguità, eventualmente spezzando alcune faccie e riordinando la lista. Dati due poligoni P e Q le cui z-estensioni si sovrappongono, è corretto disegnare P prima di Q solo se almeno uno di questi test è vero: 1. le x-estensioni di P e Q sono disgiunte (veloce); 2. le y-estensioni di P e Q sono disgiunte (veloce); 3. Si consideri il piano contenente Q. P è contenuto completamente nel semipiano opposto a quello dove è l osservatore (abbastanza veloce)? 4. Si consideri il piano contenente P. Q è contenuto completamente nello stesso semipiano dove è l osservatore (abbastanza veloce)? 5. Le proiezioni di P e Q sullo schemo sono disgiunte (pesante)? + *) %&' c E. Angel Se tutti i test falliscono, controllo se è corretto disegnare Q prima di P. Se anche questo fallisce Q viene taliato usando il piano contenente P, ed i pezzi vengono collocati nella lista al posto giusto.

40 Grafica al Calcolatore Rendering - 39 BSP trees: Un metodo elegante per la rimozione di superfici nascoste basato su alberi BSP. Nel depth sort, poiché l ordine dipende dal punto di vista, bisogna ricalcolarlo ad ogni spostamento. Non è praticabile in una applicazione interattiva (es: simulatore di volo). Un albero BSP, invece, una volta costruito (richiede pre-processing), consente di ottenere rapidamente l ordine giusto al cambiare del punto di vista. Costruisco un albero BSP auto-partitioning con i triangoli (divido usando i piani che contengono i triangoli). Vediamo come si ottiene l ordinamento: consideriamo la radice dell albero il punto di vista si trova (diciamo) a destra dell iperpiano associato alla radice. allora gli oggetti che stanno a sinistra sono più lontani di quelli che stanno a destra dell iperpiano. l ordine per gli oggetti che si trovano nei due semipiani si ottiene ricorsivamente considerando separatamente i due sottoalberi.

41 Grafica al Calcolatore Rendering - 40 Scan conversion La scan conversion a consiste nel disegnare i poligoni sulla immagine, riempendoli con il colore determinato dallo shading. Questo equivale a risolvere i seguenti due problemi. Determinare i pixel interessati da un segmento Determinare i punti interni del poligono Algoritmo di Bresenham. Il classico algoritmo per disegnare un segmento è quello di Bresenham. Esso genera una sequenza connessa di pixel. Dopo avere disegnato un pixel l algoritmo sceglie tra i suoi 8-vicini quale accendere in base all equazione della retta, usando solo aritmetica intera. Algoritmo scan-line. è l algoritmo standard per riempire i poligoni si chiama algoritmo scan-line (attenzione: assieme al termine sweep line è molto usato in Grafica e Geometria Computazionale, consideratelo un identificatore sovraccarico ). Il poligono viene riempito considerando una linea che lo scandisce riga dopo riga dal basso verso l alto. Per ciascuna riga si effettua una scansione da sinistra a destra, e quando si incontra un edge del poligono si inizia a riempire, quando si incontra un altro edge si smette. Ci sono casi speciali da gestire con accortezza. a Alcuni usano scan conversion e rasterization come sinonimi. Noi manterremo la differenza: scan conversion è parte della rasterizzazione

42 Grafica al Calcolatore Rendering - 41 Nota: la richiesta che i pixel siano connessi è necessaria quando il segnento è disegnato da solo, ma non lo è se il segnmento è il lato di un poligono da riempire con l algoritmo scan-line. In questo caso basta che ce ne sia uno per riga. Non ci occupiamo nel dettaglio di questi algoritmi, che sono ormai dei classici della Grafica, poiché per il programmatore la scan-conversion è un processo ormai completamente trasparente. Il lettore interessato potrà trovare maggiori dettagli in Mount, Lecture 25 e 26 ed Angel, sez. 7.8.

43 Grafica al Calcolatore Rendering - 42 Problema dell aliasing Un argomento di cui non abbiamo parlato, e di cui non parleremo, è quello dell aliasing Nella costruzione di una immagine per la natura discreta del raster display (o del frame buffer, che è lo stesso) è inevitabile la comparsa di artefatti che degradano la qualità dell immagine L esempio più tipico sono le scalette che si formano quando si disegnano linee rette Vi sono vari metodi di anti-aliasing e i più comuni sono basati sul calcolo di medie di shading tra pixel vicini (1) Aliasing (2) Anti aliasing

44 Grafica al Calcolatore Rendering - 43 Esempio di rasterizzazione Vediamo come avviene la rasterizzazione di un poligono con: scan-line (per scan conversion) depth-buffer (per rimozione faccie nascoste) Gouraud shading Il modello locale di riflessione assegna un colore ai vertici del poligono. La proiezione nello screen space asocia una pseudo-profondità ai vertici del poligono. Si procede alla scan conversion del poligono: i valori sui vertici vengono interpolati all interno del poligono nel corso della sua scansione per righe, per determinare 1) la visibilità dei pixel interni e 2) il loro colore (con Gouraud). L interpolazione bilineare si presta ad essere incorporata nello scan-line (si parla anche di scan-line interpolation).

45 Grafica al Calcolatore Rendering - 44 Vediamo come funziona: Dato un triangolo sui cui vertici P 0, P 1, P 2, sono definite tre quantità c 0,c 1,c 2. Se la scan line interseca due lati del triangolo in P a e P b (come in figura), calcoliamo il valore c a per interpolazione lineare tra i valori c 0 e c 1, ed il valore c b per interpolazione lineare tra i valori c 1 e c 2. calcoliamo quindi il valore c s per tutti i punti del segmento di scan line (P a,p b ) per interpolazione lineare tra i valori agli estremi, c a e c b. è più effieciente calcolare il valore interpolato in modo incrementale. Nota. L interpolazione effettuata nello screen space è una approssimazione di un processo che andrebbe svolto nell world space. P 0 P a P s P 1 P b scan line Infatti una interpolazione lineare nello screen space non lo è nel world space, e spesso vorremmo che lo fosse. P 2

46 Grafica al Calcolatore Rendering - 45 La rendering pipeline Riassumendo, abbiamo descritto sin qui la segeunte pipeline: Spazio oggetto (locale) Spazio mondo Spazio vista o camera Spazio 3D screen Spazio immagine Object definition Compose scene Define lighting Culling Local reflecion model Clipping Shading Hidden surface removal Scan conversion Sistemi diversi definiscono pipeline diverse.

47 Grafica al Calcolatore Rendering - 46 La pipeline di OpenGL In OpenGL i sistemi di riferimento non si mappano esattamente su quelli che abbiamo visto precedentemente: Spazio oggetto (locale) Spazio mondo Spazio vista Spazio 3D screen Spazio immagine... World (or standard) coord. Eye (or camera) coord. Normalized device coord. Viewport (or window) coord. Modelview Matrix Projection Matrix Viewport tranformation Nel nostro sistema le coordinate immagine sono 2D, mentre in OpenGL sono 3D. in OpenGL, nelle window coordinates la pseudo-profondità viene conservata, quindi a rigore si tratta di uno spazio 3D. Per confondere ulteriormente le cose, OpenGL chiama invece screen coordinates le coordinate immagine 2D.

La Pipeline Grafica. Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione. La Pipeline Grafica.

La Pipeline Grafica. Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione. La Pipeline Grafica. La Pipeline Grafica Vediamo come avviene il rendering, ovvero la visualizzazione di oggetti. Introduzione La Pipeline Grafica Spazio vista Spazio 3D-screen Shading Rasterizzazione Rimozione delle facce

Dettagli

Rendering I - geometric processing

Rendering I - geometric processing Rendering I - geometric processing Dove si descrivono i principali metodi di alto livello utilizzati per ottenere una immagine a partire da una descrizione degli oggetti 3D Introduzione Trasformazioni

Dettagli

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics Grafica al calcolatore - Computer Graphics 7 Pipeline di rasterizzazione 23/11/13 Grafica 2013 1 Rasterization pipeline Sappiamo implementare ray casting (o ray tracing). Abbiamo tuttavia già visto che

Dettagli

Processo di rendering

Processo di rendering Processo di rendering 1 Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione I parametri della vista 3D I sistemi di coordinate 2 I parametri

Dettagli

Processo di rendering

Processo di rendering Processo di rendering Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione 2 Rendering nello spazio 2D Il processo di rendering (visualizzazione)

Dettagli

Grafica al calcolatore - Computer Graphics

Grafica al calcolatore - Computer Graphics Grafica al calcolatore - Computer Graphics 8 Pipeline di rasterizzazione - 2 12/12/14 Grafica 2014 1 Riepilogo Operazioni geometriche Pixel processing 12/12/14 Grafica 2014 2 Rasterizzazione/scan connversion

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

Le ombre in OpenGl. Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale http://varindaniele.altervista.org

Le ombre in OpenGl. Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale http://varindaniele.altervista.org Le ombre in OpenGl Daniele Varin LS Ing. Informatica Corso di Elementi di Grafica Digitale http://varindaniele.altervista.org Punto di partenza In OpenGl le luci non proiettano ombre 2 Perché si introducono

Dettagli

Proiezioni Grafica 3d

Proiezioni Grafica 3d Proiezioni Grafica 3d Giancarlo RINALDO rinaldo@dipmat.unime.it Dipartimento di Matematica Università di Messina ProiezioniGrafica 3d p. 1 Introduzione Il processo di visualizzazione in 3D è intrinsecamente

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Introduzione al 3D con Autocad

Introduzione al 3D con Autocad 2 Introduzione al 3D con Autocad Coso di CAD B condotto da Daniela Sidari a.a. 2012/2013 19.02.2013 Modellazione geometrica 3D wireframe superfici solidi Si distinguono tre tecniche principali di modellazione:

Dettagli

Luci/Ombre. YAFARAY motore di rendering Open Source. Federico Frittelli aka fredfrittella. SUTURA-studio di progettazione.

Luci/Ombre. YAFARAY motore di rendering Open Source. Federico Frittelli aka fredfrittella. SUTURA-studio di progettazione. Luci/Ombre YAFARAY motore di rendering Open Source Federico Frittelli aka fredfrittella SUTURA-studio di progettazione LinuxDay, 2010 fredfrittella (SUTURA-studio di progettazione) Luci/Ombre 23 Ottobre

Dettagli

Interazione luce - materia

Interazione luce - materia Interazione luce - materia 1 Modelli di illuminazione Il modello di illuminazione descrive l interazione tra la luce e gli oggetti della scena Descrive i fattori che determinano il colore di un punto della

Dettagli

RETTE, PIANI, SFERE, CIRCONFERENZE

RETTE, PIANI, SFERE, CIRCONFERENZE RETTE, PIANI, SFERE, CIRCONFERENZE 1. Esercizi Esercizio 1. Dati i punti A(1, 0, 1) e B(, 1, 1) trovare (1) la loro distanza; () il punto medio del segmento AB; (3) la retta AB sia in forma parametrica,

Dettagli

Misure di base su una carta. Calcoli di distanze

Misure di base su una carta. Calcoli di distanze Misure di base su una carta Calcoli di distanze Per calcolare la distanza tra due punti su una carta disegnata si opera nel modo seguente: 1. Occorre identificare la scala della carta o ricorrendo alle

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

La distribuzione Normale. La distribuzione Normale

La distribuzione Normale. La distribuzione Normale La Distribuzione Normale o Gaussiana è la distribuzione più importante ed utilizzata in tutta la statistica La curva delle frequenze della distribuzione Normale ha una forma caratteristica, simile ad una

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

4. Proiezioni del piano e dello spazio

4. Proiezioni del piano e dello spazio 4. Proiezioni del piano e dello spazio La visualizzazione di oggetti tridimensionali richiede di ottenere una vista piana dell'oggetto. Questo avviene mediante una sequenza di operazioni. Innanzitutto,

Dettagli

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video Video Librerie digitali Gestione di video Ogni filmato è composto da più parti Video Audio Gestito come visto in precedenza Trascrizione del testo, identificazione di informazioni di interesse Testo Utile

Dettagli

Trasformazioni 2D. Grande differenza rispetto alla grafica raster!

Trasformazioni 2D. Grande differenza rispetto alla grafica raster! Trasformazioni 2D Il grande vantaggio della grafica vettoriale è che le immagini vettoriali descrivono entità matematiche È immediato manipolare matematicamente tali entità In quasi tutte le manipolazioni

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

Applicazioni 3D avanzate

Applicazioni 3D avanzate Azienda Ospedaliera Card. G. Panico Applicazioni 3D avanzate VR e segmentazione delle articolazioni: campi applicativi Indice Applicazioni 3D avanzate Articolazioni e grandi macchine 1. Definizioni 2.

Dettagli

Informatica Grafica. Prof. Massimiliano Dellisanti Fabiano Vilardi. (2a parte) a.a. 2011/2012

Informatica Grafica. Prof. Massimiliano Dellisanti Fabiano Vilardi. (2a parte) a.a. 2011/2012 Informatica Grafica (2a parte) a.a. 2011/2012 Prof. Massimiliano Dellisanti Fabiano Vilardi 1 Grafica 3D Con Grafica 3D si indicano quelle tecniche informatiche finalizzate alla descrizione (e rappresentazione

Dettagli

1.1 Modello di un Processo di Rendering. Gestore delle Geometrie (Ricostruzione delle Geoemtrie e Clipping)

1.1 Modello di un Processo di Rendering. Gestore delle Geometrie (Ricostruzione delle Geoemtrie e Clipping) Capitolo 1 Esercizi sulla Pipeline di Rendering 1.1 Modello di un Processo di Rendering Componenti dell Architettura di Rendering: Processore Bus di Comunicazione Scheda Grafica Moduli della Pipeline di

Dettagli

IR(3): Illuminazione Globale

IR(3): Illuminazione Globale IR(3): Illuminazione Globale Alessandro Martinelli alessandro.martinelli@unipv.it 21 Dicembre 2011 IR(3): Illuminazione Globale Illuminazione e Rendering: Principi di Illuminazione Rendering Real-Time

Dettagli

SCHEDA M MOSAICI CLASSIFICARE CON LA SIMMETRIA

SCHEDA M MOSAICI CLASSIFICARE CON LA SIMMETRIA SCHEDA M MOSAICI CLASSIFICARE CON LA SIMMETRIA Qui sotto avete una griglia, che rappresenta una normale quadrettatura, come quella dei quaderni a quadretti; nelle attività che seguono dovrete immaginare

Dettagli

SISTEMI DI NUMERAZIONE E CODICI

SISTEMI DI NUMERAZIONE E CODICI SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema

Dettagli

Rappresentazione di oggetti 3D

Rappresentazione di oggetti 3D Rappresentazione di oggetti 3D 1 Modellazione geometrica La modellazione geometrica riguarda le tecniche di rappresentazione di curve e superfici Surface modeling Rappresentazione della superficie di un

Dettagli

Modelli per i materiali

Modelli per i materiali Texture mapping 1 Modelli per i materiali Il realismo visivo può essere ottenuto mediante i modelli di illuminazione e dei materiali Per modellare i materiali si possono utilizzare delle immagini dette

Dettagli

Computer Graphics. v 1. Rasterizer: lines (segmenti) la rasterizzazione from vertex to pixels. Rasterizzazione: lines (segmenti)

Computer Graphics. v 1. Rasterizer: lines (segmenti) la rasterizzazione from vertex to pixels. Rasterizzazione: lines (segmenti) Computer Graphics Università dell Insubria Corso di Laurea in Informatica la rasterizzazione from vertex to pixels Rasterizer: lines (segmenti) Vertici (punti in R 3 ) computazioni per vertice Z Vertici

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE Che cosa sono e a cosa servono le caratteristiche? Oltre a descrivere le qualità di un prodotto con un testo generico (descrizione) è possibile dettagliare

Dettagli

COSTRUIAMO UN AEROMODELLO 3D 4

COSTRUIAMO UN AEROMODELLO 3D 4 COSTRUIAMO UN AEROMODELLO 3D 4 Con i comandi che abbiamo visto fina ad ora dovreste essere in grado di costruire da soli le ali del modello (ovviamente fatene una sola e poi specchiatela), basta trasformare

Dettagli

Il campionamento. La digitalizzazione. Teoria e pratica. La rappresentazione digitale delle immagini. La rappresentazione digitale delle immagini

Il campionamento. La digitalizzazione. Teoria e pratica. La rappresentazione digitale delle immagini. La rappresentazione digitale delle immagini ACQUISIZIONE ED ELABORAZIONE DELLE IMMAGINI Teoria e pratica La digitalizzazione La digitalizzazione di oggetti legati a fenomeni di tipo analogico, avviene attraverso due parametri fondamentali: Il numero

Dettagli

Grafica al Calcolatore Fotorealismo - 1. Introduzione

Grafica al Calcolatore Fotorealismo - 1. Introduzione Fotorealismo Dove si elecano trucchi sagaci ed effetti speciali che servono ad aumentare con poca spesa il fotorealismo. Introduzione Environment map Light map Ombre geometriche Trasparenza Multi-pass

Dettagli

Corrispondenze e funzioni

Corrispondenze e funzioni Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei

Dettagli

Trasformazioni Geometriche 1 Roberto Petroni, 2011

Trasformazioni Geometriche 1 Roberto Petroni, 2011 1 Trasformazioni Geometriche 1 Roberto etroni, 2011 Trasformazioni Geometriche sul piano euclideo 1) Introduzione Def: si dice trasformazione geometrica una corrispondenza biunivoca che associa ad ogni

Dettagli

La propagazione delle onde luminose può essere studiata per mezzo delle equazioni di Maxwell. Tuttavia, nella maggior parte dei casi è possibile

La propagazione delle onde luminose può essere studiata per mezzo delle equazioni di Maxwell. Tuttavia, nella maggior parte dei casi è possibile Elementi di ottica L ottica si occupa dello studio dei percorsi dei raggi luminosi e dei fenomeni legati alla propagazione della luce in generale. Lo studio dell ottica nella fisica moderna si basa sul

Dettagli

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD

Dettagli

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono

Dettagli

Esempi di funzione. Scheda Tre

Esempi di funzione. Scheda Tre Scheda Tre Funzioni Consideriamo una legge f che associa ad un elemento di un insieme X al più un elemento di un insieme Y; diciamo che f è una funzione, X è l insieme di partenza e X l insieme di arrivo.

Dettagli

Il rendering fotorealistico. Conferimento ad oggetti 3D di un aspetto particolarmente fotorealistico

Il rendering fotorealistico. Conferimento ad oggetti 3D di un aspetto particolarmente fotorealistico Il rendering fotorealistico Conferimento ad oggetti 3D di un aspetto particolarmente fotorealistico Rendering fotorealistico Gli oggetti sottoposti a rendering devono essere facce 3D o essere tridimensionali.

Dettagli

DOMINIO E LIMITI. Esercizio 3 Studiare gli insiemi di livello della funzione f, nei seguenti casi: 1) f(x,y) = y2 x 2 + y 2.

DOMINIO E LIMITI. Esercizio 3 Studiare gli insiemi di livello della funzione f, nei seguenti casi: 1) f(x,y) = y2 x 2 + y 2. FUNZIONI DI DUE VARIABILI 1 DOMINIO E LIMITI Domini e disequazioni in due variabili. Insiemi di livello. Elementi di topologia (insiemi aperti, chiusi, limitati, convessi, connessi per archi; punti di

Dettagli

13. Campi vettoriali

13. Campi vettoriali 13. Campi vettoriali 1 Il campo di velocità di un fluido Il concetto di campo in fisica non è limitato ai fenomeni elettrici. In generale il valore di una grandezza fisica assegnato per ogni punto dello

Dettagli

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t) CONTINUITÀ E DERIVABILITÀ Esercizi proposti 1. Determinare lim M(sin) (M(t) denota la mantissa di t) kπ/ al variare di k in Z. Ove tale limite non esista, discutere l esistenza dei limiti laterali. Identificare

Dettagli

LEZIONI CON I PAD Docente scuola secondaria IC Moglia Carla Casareggio Classi seconde 2014/2015 Proprietà triangoli e quadrilateri con Sketchometry

LEZIONI CON I PAD Docente scuola secondaria IC Moglia Carla Casareggio Classi seconde 2014/2015 Proprietà triangoli e quadrilateri con Sketchometry LEZIONI CON I PAD Docente scuola secondaria IC Moglia Carla Casareggio Classi seconde 2014/2015 Proprietà triangoli e quadrilateri con Sketchometry La costruzione di figure geometriche al computer con

Dettagli

DISEGNO DI MACCHINE APPUNTI DELLE LEZIONI

DISEGNO DI MACCHINE APPUNTI DELLE LEZIONI DISEGNO DI MACCHINE APPUNTI DELLE LEZIONI Lezione 3: Proiezioni Ortogonali con il metodo europeo Francesca Campana Le proiezioni ortogonali Le proiezioni ortogonali descrivono bi-dimensionalmente un oggetto

Dettagli

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Una tabella Pivot usa dati a due dimensioni per creare una tabella a tre dimensioni, cioè una tabella

Dettagli

Spline Nurbs. IUAV Disegno Digitale. Camillo Trevisan

Spline Nurbs. IUAV Disegno Digitale. Camillo Trevisan Spline Nurbs IUAV Disegno Digitale Camillo Trevisan Spline e Nurbs Negli anni 70 e 80 del secolo scorso nelle aziende si è iniziata a sentire l esigenza di concentrare in un unica rappresentazione gestita

Dettagli

ColorSplitter. La separazione automatica dei colori di Colibri.. Perché ColorSplitter? Come opera ColorSplitter?

ColorSplitter. La separazione automatica dei colori di Colibri.. Perché ColorSplitter? Come opera ColorSplitter? ColorSplitter La separazione automatica dei colori di Colibri.. ColorSplitter è una nuova funzionalità aggiunta a Colibri, che permette di elaborare un immagine trasformandola in una separata in canali

Dettagli

~ Copyright Ripetizionando - All rights reserved ~ http://ripetizionando.wordpress.com STUDIO DI FUNZIONE

~ Copyright Ripetizionando - All rights reserved ~ http://ripetizionando.wordpress.com STUDIO DI FUNZIONE STUDIO DI FUNZIONE Passaggi fondamentali Per effettuare uno studio di funzione completo, che non lascia quindi margine a una quasi sicuramente errata inventiva, sono necessari i seguenti 7 passaggi: 1.

Dettagli

Matematica e Statistica

Matematica e Statistica Matematica e Statistica Prova d esame (0/07/03) Università di Verona - Laurea in Biotecnologie - A.A. 0/3 Matematica e Statistica Prova di MATEMATICA (0/07/03) Università di Verona - Laurea in Biotecnologie

Dettagli

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti Un ripasso di aritmetica: Rappresentazione binaria - operazioni A queste rappresentazioni si possono applicare le operazioni aritmetiche: riporti 1 1 0 + 1 0 = 1 0 0 24 Un ripasso di aritmetica: Rappresentazione

Dettagli

www.andreatorinesi.it

www.andreatorinesi.it La lunghezza focale Lunghezza focale Si definisce lunghezza focale la distanza tra il centro ottico dell'obiettivo (a infinito ) e il piano su cui si forma l'immagine (nel caso del digitale, il sensore).

Dettagli

Analisi e diagramma di Pareto

Analisi e diagramma di Pareto Analisi e diagramma di Pareto L'analisi di Pareto è una metodologia statistica utilizzata per individuare i problemi più rilevanti nella situazione in esame e quindi le priorità di intervento. L'obiettivo

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE. Operare con i numeri

Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE. Operare con i numeri COMPETENZA CHIAVE MATEMATICA Fonte di legittimazione Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE L alunno utilizza il calcolo scritto e mentale con i numeri

Dettagli

Nuovi oggetti grafici per la Visualizzazione del Tracker

Nuovi oggetti grafici per la Visualizzazione del Tracker Chapter 4 Nuovi oggetti grafici per la Visualizzazione del Tracker In questo capitolo illustrerò i nuovi oggetti grafici che ho sviluppato ed implementato nel software di visualizzazione di CMS. Prima

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Demo. La palette allinea. La palette Anteprima conversione trasparenza. Adobe Illustrator CS2

Demo. La palette allinea. La palette Anteprima conversione trasparenza. Adobe Illustrator CS2 Le Palette (parte prima) Come abbiamo accennato le Palette permettono di controllare e modificare il vostro lavoro. Le potete spostare e nascondere come spiegato nella prima lezione. Cominciamo a vedere

Dettagli

Informatica grafica e Multimedialità. 4 Immagini grafiche

Informatica grafica e Multimedialità. 4 Immagini grafiche Immagini raster e vettoriali Le immagini grafiche si distinguono in due classi differenti: immagini raster e immagini vettoriali. Le immagini raster, dette anche pittoriche o pixel-oriented, dividono l

Dettagli

LA RETTA. Retta per l'origine, rette orizzontali e verticali

LA RETTA. Retta per l'origine, rette orizzontali e verticali Retta per l'origine, rette orizzontali e verticali LA RETTA Abbiamo visto che l'equazione generica di una retta è del tipo Y = mx + q, dove m ne rappresenta la pendenza e q il punto in cui la retta incrocia

Dettagli

Dovremmo a questo punto incominciare a vedere la suddivisione della nostra superficie.

Dovremmo a questo punto incominciare a vedere la suddivisione della nostra superficie. Vediamo ancora come lavorare sulle superfici attraverso la loro parametrizzazione, e suddivisione progressiva. Alcune volte in Grasshopper ci sono diversi modi per fare le stesse cose. Abbiamo visto il

Dettagli

Consorzio Nettuno - Corso di Matematica 1 Schede di lavoro guidato per le esercitazioni

Consorzio Nettuno - Corso di Matematica 1 Schede di lavoro guidato per le esercitazioni Consorzio Nettuno - Corso di Matematica 1 Schede di lavoro guidato per le esercitazioni A cura di Sebastiano Cappuccio SCHEDA N. 6 ARGOMENTO: Grafici di funzioni sottoposte a trasformazioni elementari.

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

PointCloud 7.0 Anno 2011

PointCloud 7.0 Anno 2011 PointCloud 7.0 Anno 2011 Compatibilità con AutoCAD 2007-2012 ed AutoCAD 2007-2012 Supporto del formato nativo delle nuvole di punti di AutoCAD (PCG) e miglioramento delle performance riguardo la velocità

Dettagli

Documentazione esterna al software matematico sviluppato con MatLab

Documentazione esterna al software matematico sviluppato con MatLab Documentazione esterna al software matematico sviluppato con MatLab Algoritmi Metodo di Gauss-Seidel con sovrarilassamento Metodo delle Secanti Metodo di Newton Studente Amelio Francesco 556/00699 Anno

Dettagli

Basi di matematica per il corso di micro

Basi di matematica per il corso di micro Basi di matematica per il corso di micro Microeconomia (anno accademico 2006-2007) Lezione del 21 Marzo 2007 Marianna Belloc 1 Le funzioni 1.1 Definizione Una funzione è una regola che descrive una relazione

Dettagli

2. Leggi finanziarie di capitalizzazione

2. Leggi finanziarie di capitalizzazione 2. Leggi finanziarie di capitalizzazione Si chiama legge finanziaria di capitalizzazione una funzione atta a definire il montante M(t accumulato al tempo generico t da un capitale C: M(t = F(C, t C t M

Dettagli

Lezione 9: Cambio di base

Lezione 9: Cambio di base Lezione 9: Cambio di base In questa lezione vogliamo affrontare uno degli argomenti piu ostici per lo studente e cioè il cambio di base all interno di uno spazio vettoriale, inoltre cercheremo di capire

Dettagli

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato

Dettagli

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D) ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI () Una immagine (digitale) permette di percepire solo una rappresentazione 2D del mondo La visione 3D si pone lo scopo di percepire il mondo per come è in 3 dimensioni

Dettagli

2 Argomenti introduttivi e generali

2 Argomenti introduttivi e generali 1 Note Oltre agli esercizi di questa lista si consiglia di svolgere quelli segnalati o assegnati sul registro e genericamente quelli presentati dal libro come esercizio o come esempio sugli argomenti svolti

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

Forze come grandezze vettoriali

Forze come grandezze vettoriali Forze come grandezze vettoriali L. Paolucci 23 novembre 2010 Sommario Esercizi e problemi risolti. Per la classe prima. Anno Scolastico 2010/11 Parte 1 / versione 2 Si ricordi che la risultante di due

Dettagli

II.f. Altre attività sull euro

II.f. Altre attività sull euro Altre attività sull euro II.f È consigliabile costruire modelli in carta o cartoncino di monete e banconote, e farli usare ai bambini in varie attività di classe fin dal primo o al più dal secondo anno.

Dettagli

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione 4 LEZIONE: Programmazione su Carta a Quadretti Tempo della lezione: 45-60 Minuti. Tempo di preparazione: 10 Minuti Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione SOMMARIO:

Dettagli

Lunghezza ocale. Donato Di Bello

Lunghezza ocale. Donato Di Bello F Lunghezza ocale Donato Di Bello Cinepresa, telecamera, macchina fotografica: tre strumenti tecnologici che utilizziamo per registrare la realtà intorno a noi o per trasformare in immagini la nostra fantasia.

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

FASCI DI RETTE. scrivere la retta in forma esplicita: 2y = 3x + 4 y = 3 2 x 2. scrivere l equazione del fascio di rette:

FASCI DI RETTE. scrivere la retta in forma esplicita: 2y = 3x + 4 y = 3 2 x 2. scrivere l equazione del fascio di rette: FASCI DI RETTE DEFINIZIONE: Si chiama fascio di rette parallele o fascio improprio [erroneamente data la somiglianza effettiva con un fascio!] un insieme di rette che hanno tutte lo stesso coefficiente

Dettagli

Vademecum studio funzione

Vademecum studio funzione Vademecum studio funzione Campo di Esistenza di una funzione o dominio: Studiare una funzione significa determinare gli elementi caratteristici che ci permettono di disegnarne il grafico, a partire dalla

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Tecniche di mappatura

Tecniche di mappatura Tecniche di mappatura Dove si discute l utile tecnica di texture mapping che consente di aggiungere dettagli alle superfici senza gravare sulla geometria. Introduzione Texture mapping Bump mapping Grafica

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Domande a scelta multipla 1

Domande a scelta multipla 1 Domande a scelta multipla Domande a scelta multipla 1 Rispondete alle domande seguenti, scegliendo tra le alternative proposte. Cercate di consultare i suggerimenti solo in caso di difficoltà. Dopo l elenco

Dettagli

Sistemi Informativi Territoriali. Map Algebra

Sistemi Informativi Territoriali. Map Algebra Paolo Mogorovich Sistemi Informativi Territoriali Appunti dalle lezioni Map Algebra Cod.735 - Vers.E57 1 Definizione di Map Algebra 2 Operatori locali 3 Operatori zonali 4 Operatori focali 5 Operatori

Dettagli

Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai chiesti, Qual è la via più breve tra tre punti? o tra quattro punti?

Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai chiesti, Qual è la via più breve tra tre punti? o tra quattro punti? Dov'è Moriart? Cerchiamo la via più breve con Mathcad Potete determinare la distanza più breve da tre punti e trovare Moriart? Si sa che la via più breve tra due punti è la linea retta. Ma vi siete mai

Dettagli

Capitolo V : Il colore nelle immagini digitali

Capitolo V : Il colore nelle immagini digitali Capitolo V : Il colore nelle immagini digitali Lavorare con il colore nelle immagini digitali L uso dei colori nella visione computerizzata e nella computer grafica implica l incorrere in determinate problematiche

Dettagli

Sia data la rete di fig. 1 costituita da tre resistori,,, e da due generatori indipendenti ideali di corrente ed. Fig. 1

Sia data la rete di fig. 1 costituita da tre resistori,,, e da due generatori indipendenti ideali di corrente ed. Fig. 1 Analisi delle reti 1. Analisi nodale (metodo dei potenziali dei nodi) 1.1 Analisi nodale in assenza di generatori di tensione L'analisi nodale, detta altresì metodo dei potenziali ai nodi, è un procedimento

Dettagli

CORSO DI LAUREA IN INGEGNERIA.

CORSO DI LAUREA IN INGEGNERIA. CORSO DI LAUREA IN INGEGNERIA. FOGLIO DI ESERCIZI 4 GEOMETRIA E ALGEBRA LINEARE 2010/11 Esercizio 4.1 (2.2). Determinare l equazione parametrica e Cartesiana della retta dello spazio (a) Passante per i

Dettagli

IL MIO PRIMO SITO NEWS USANDO GLI SCHEDARI

IL MIO PRIMO SITO NEWS USANDO GLI SCHEDARI Pagina 1 UN SISTEMA DI NEWS Sommario UN SISTEMA DI NEWS...1 Introduzione...2 Scelgo l'area su cui operare...3 Un minimo di teoria...3 Creo le Pagine...4 Definizione dello Schedario Novità...6 Compilo la

Dettagli

OpenGL: visualizzazione 3D

OpenGL: visualizzazione 3D OpenGL: visualizzazione 3D La visualizzazione di una scena avviene come se si stesse usando una macchina fotografica per la quale si può controllare la posizione nello spazio 3D; si può cambiare il tipo

Dettagli

5.2. Pipetta. 2: Lo strumento di luce/ombra

5.2. Pipetta. 2: Lo strumento di luce/ombra 2: Lo strumento di luce/ombra Scostamento Luce a «0%» e Ombra a «100%» Con lo strumento di luce/ombra possono essere fissati il punto più chiaro, il punto medio e quello più scuro dell immagine. Sotto

Dettagli

( x) ( x) 0. Equazioni irrazionali

( x) ( x) 0. Equazioni irrazionali Equazioni irrazionali Definizione: si definisce equazione irrazionale un equazione in cui compaiono uno o più radicali contenenti l incognita. Esempio 7 Ricordiamo quanto visto sulle condizioni di esistenza

Dettagli

LA GRAFICA E LA GEOMETRIA OPERATIVA

LA GRAFICA E LA GEOMETRIA OPERATIVA LA GRAFICA E LA GEOMETRIA OPERATIVA La geometria operativa, contrariamente a quella descrittiva basata sulle regole per la rappresentazione delle forme geometriche, prende in considerazione lo spazio racchiuso

Dettagli