Modellare 1 Daniele Marini.

Slides:



Advertisements
Presentazioni simili
Metodo di Calcolo Numerico per Equazioni differenziali Ordinarie
Advertisements

Le forme dello spazio Caffè Scienza. Associazione formaScienza.
Funzioni di due variabili
Spazio dei giunti e spazio operativo
I Poligoni.
MODELLAZIONE DIGITALE
Il campo elettrico - Lo chiamiamo campo elettrico,
programmazione lineare: un esempio
STEREOS: SOLIDO METRIA: MISURAZIONE
Definizione e caratteristiche
Elementi di Matematica
Elementi di Matematica
Curve e Superfici Il mondo non è fatto di rette e poligoni.
Corso di Informatica grafica 1 Introduzione Quando si rappresentano modelli di oggetti 3D costituiti da facce poligonali secondo delle proiezioni alcune.
Esercizi di riepilogo Gabriella Puppo.
GEOMETRIA SOLIDA o STEREOMETRIA
Studente Claudia Puzzo
Considera un quadrato inscritto in una circonferenza di raggio r
Formule generali per il calcolo di superficie e volume di solidi a 2 basi Preparatevi all’esame di matematica e scienze, studiando queste pagine, rielaborate.
LE CONICHE                                       .
Metodi numerici per equazioni differenziali ordinarie Laboratorio di Metodi Numerici a.a. 2008/2009.
Metodi numerici per l’approssimazione
Metodi numerici per lapprossimazione Laboratorio di Metodi Numerici a.a. 2008/2009 Prof. Maria Lucia Sampoli.
1 Superfici nascoste Daniele Marini. 2 Ray casting adatto a CSG o superfici parametriche dipende dal punto di vista è una sorta di campionamento spaziale.
Il calcolo di radiosity
4 aprile 2011 Modellazione Solida Prof. Roberto Pirrone.
Daniele Santamaria – Marco Ventura
I poliedri.
I solidi.
I solidi.
Corso tecniche di rappresentazione dello spazio A.A. 2009/2010 docente Arch. Emilio Di Gristina 11.
Cad 3d, le origini e le motivazioni
Curve e superfici parametriche
Daniele Marini Con contributi di Maurizio Rossi
LA CIRCONFERENZA.
Daniele Marini, Maurizio Rossi
Daniele Marini Con contributi di Maurizio Rossi
Corso Di Programmazione Grafica
Index Land Surface for Efficient kNN Query Gruppo 2 Riccardo Mascia Roberto Saluto Relatore Roberto Saluto Cyrus Shahabi Lu-An TangSonghua Xing.
Corso di tecniche della modellazione digitale computer 3D A.A. 2010/2011 docente Arch. Emilio Di Gristina 00.
Formule generali per il calcolo di superficie e volume di solidi a 2 basi by iprof.
Superfici nascoste Daniele Marini.
1 Visualizzazione scientifica Daniele Marini. 2 Visualizzazione scientifica Trovare un modo per rendere i risultati di un calcolo scientifico, o rilevati.
due parole sull’interpolazione
Modelli di Illuminazione
Intersezioni e distanze
Intersezioni e distanze
1 Ottimizzazione della scena Daniele Marini. 2 Esigenze del RT rendering maggiori frame /sec risoluzione più alta oggetti più accurati e realistici.
Rotazioni e quaternioni
Ottimizzazione della scena Daniele Marini. Esigenze del RT rendering maggiori frame /sec risoluzione più alta oggetti più accurati e realistici 2 Programmazione.
1 Ottimizzazione della scena Daniele Marini. 2 Esigenze del RT rendering maggiori frame /sec risoluzione più alta oggetti più accurati e realistici.
Intersezioni e distanze Daniele Marini Corso di Programmazione Grafica per il Tempo Reale.
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Prof. Francesco Gaspare Caputo
P. Burghignoli ♪, F. Frezza ♪, A. Galli ♪, L. Pajewski ☼ e G. Schettini ☼ Parma, settembre 2007 Parma, settembre 2007 EQUAZIONI INTEGRALI:
Formule generali per il calcolo di superficie e volume di solidi a 2 basi Preparatevi all’esame di matematica e scienze, studiando queste pagine, rielaborate.
Geometria Solida Poliedri Prima parte.
Equazione di un luogo geometrico nel piano cartesiano
Daniele Marini Con contributi di Maurizio Rossi
Due parole sull’interpolazione Daniele Marini. Due problemi trovare una funzione incognita a partire da dati campione –che assuma nei punti campione il.
Programmazione lineare: un esempio Mix produttivo ottimo con risorse vincolate Materiale di studio: M. Fischetti, Lezioni di RO, Cap. 3. Libreria Progetto.
I poliedri diagonale DEFINIZIONE. Un poliedro è la parte di spazio delimitata da poligoni posti su piani diversi in modo tale che ogni lato sia comune.
La circonferenza e l’ellisse La sezione conica è l’intersezione di un piano con un cono. La sezione cambia a seconda dell’inclinazione del piano. Se il.
Luogo geometrico In geometria esistono delle figure formati da punti che soddisfano a delle particolari condizioni. Queste figure costituiscono dei luoghi.
IISS "E. Medi" - Galatone Prof. Giuseppe Frassanito a.s. 2012/2013
Raccogliamo x al primo membro e 2 al secondo:
Luoghi di punti In geometria il termine
Metodo degli Elementi finiti applicato ad una lastra forata
La Circonferenza. LA CIRCONFERENZA Assegnato nel piano un punto C detto Centro, si chiama circonferenza la curva piana con i punti equidistanti da C.
Transcript della presentazione:

Modellare 1 Daniele Marini

Sintesi e analisi Dalla forma geometrica all’immagine dall’immagine alla forma geometrica Problema diretto e problema inverso

Quale schema di rappresentazione per il rendering di forme statiche? per il rendering di forme animate o dinamiche? oggetti rigidi o flessibili o malleabili? forme per la codifica? Quali tipi di forma: semplici e geometriche o complesse come una testa? NON ESISTE LO SCHEMA UNICO UNIVERSALE

Modello Descrive il metodo o lo schema di rappresentazione utilizzato nella sintesi di immagini. I principali: mesh o griglia poligonale poliedri patch parametriche (bicubiche ..) CSG (geometria solida costruttiva) suddivisione spaziale (voxel) implicite: x2 + y2 + z2 = r2 Oggetto di studio del CAD

Elementi base Quadrilatero (o triangolo) Patch parametrica CSG voxel quadrica

Poliedri Vertici, spigoli, facce, oggetti Semplice, a volte costoso, problemi di precisione e accuratezza, dipende dalla curvatura, può essere automatizzato (tastatori 3d, luce strutturata, o con algoritmi - es. sweep -trascinamento) Con sistemi automatici si generano molti triangoli: problema della decimazione dei triangoli

Importanza della struttura dati: struttura di un disegno piano

Struttura di una scena

Procedimenti costruttivi: estrusione e rotazione

Rotazione

Funzioni di Bernstein blending functions

Costruire una curva di Bezier

Vincoli di continuita’ agli estremi del poligono

Superfici parametriche: Bezier

Patch bicubiche parametriche P(u,v) = Si=0..3 S, j=0,.3 Ci,j Bi(u)Bj(v) Ci,j sono 16 punti di controllo u, v sono parametri reali in (0,1) P è un polinomio bi cubico

Valutare la superficie parametrica Valutazione diretta Algoritmi progressivi: De Casteljou - interpolazione lineare progressiva, es: parabola b1 b11 b01 b0 b02 b2

NURBS Non Uniform Rational B Splines: si considerano i pesi wi se i pesi sono tutti =1 si hanno le curve di Bezier

Curve parametriche per interpolazione Spline cubiche Funzioni di Hermite:

Mesh con curve parametriche

Lofting

Costruzione per trascinamento lungo curve parametriche Data una curva parametrica bicubica, con c0, c1, c2, c3 punti di controllo: P(u) = c0 u3 + c1 u2 + c2 u + c3 Essa rappresenti la sezione trasversale di una forma da trascinare per costruire un poliedro, generando altre sezioni trasversali a intervalli determinati. Lungo la sezione vanno individuati i vertici che verranno collegati da un profilo all’altro per creare un poliedro. E’ necessario definire un sistema di riferimento chiamato “frame” per definire l’orientamento di ogni faccia del poliedro.

Occorre anche definire come suddividere in intervalli la sezione: la divisione di u in intervalli uguali può produrre quadrangoli non uniformi, si sceglie la parametrizzazione rispetto alla lunghezza degli archi: se la curvatura è elevata si avranno più poliedri rispetto a tratti con curvatura bassa.

Per definire il “frame” - frame di Frenet: l’origine è un punto campione P , si definiscono 3 vettori T, N, B con T vettore unitario tangente alla curva in P: T = V / |V| e V =3au2+ 2bu + c derivata della curva N = K/ |K| dove K = V x A x V/ |V| e A derivata seconda della curva (A = 6au + 2b) B = T x N

Oggetti complessi composti da molte patch si creano con tecniche di interpolazione di punti campione, imponendo continuità tra le varie “patch”. La continuità imitata al primo ordine garantisce l’assenza di “buchi”, ma dà luogo a superfici con “spigoli” indesiderati. Si impongono continuità della derivata prima e secondo.

Decimazione dei triangoli Perche’ triangoli Come decimare? Ridurre i triangoli in regioni “piatte” Preservare l’aspetto Stimare la curvatura:

Metodo di Schroeder Determinare gli spigoli “rilevanti per l’aspetto”: vanno tenuti Classificare i vertici: Punti interni generici Punti comuni a triangoli con T connessione Punti del contorno Punti di uno spigolo rilevante per l’aspetto Punti comunia 3 o piu’ spigoli rilevanti per l’aspetto (punti vertice)

Punti interni generici Si possono eliminare se il gradiente e’ inferiore a una soglia Punti comuni a triangoli con T connessione Non si possono eliminare Punti del contorno Si possono eliminare se la distanza dalla retta congiungente I vertici adiacenti e’ inferiore a una soglia Punti di uno spigolo rilevante per l’aspetto Punti comunia 3 o piu’ spigoli rilevanti per l’aspetto (punti vertice)

Triangolazione Triangolazione di Delaunay e diagrammi di Voronoi Partizione del piano in celle t.c. tutti i punti di una cella sono piu’ vicini al vertice generatore della cella di ogni altro punto

Algoritmo di Sibson Data una coppia di tirangoli adiacenti, si esamina e si scambiano se un vertice e’ interno al cerchio circoscritto:

Un esempio

Solidi primitivi

CSG

Albero CSG

Esempio CSG

La modellazione solida richiede specifiche informazioni per individuare sottospazi e per determinare se un punto appartiene a un semispazio. In ogni caso si tratta di definire semispazi e applicare operazioni insiemistiche per aggregare semispazi. Un semispazio algebrico è definito come: e p(x,y,z) è un polinomio reale con coefficienti reali

Schemi di rappresentazione per la modellazione solida: CSG Boundary representation (Brep) suddivisione spaziale superfici mediali ciascuno schema deve permettere di risolvere il problema dell’appartenenza di un punto al semispazio individuato dal solido

Con lo schema CSG si possono ottenere forme assai complesse applicando tecniche di “sweep” Nello schema Brep un solido è rappresentato da una superficie delimitata da facce spigoli e vertici. Gli elementi di una rappresentazione Brep possono intersecarsi solo lungo spigoli o vertici descritti nella struttura. Operatori booleani possono essere applicati anche a uno schema Brep.

Gli schemi Brep si dividono in due grandi classi: manifold Brep non manifold Brep manifold (varietà lineari) ammettono spigoli comuni a due sole facce e vertici comuni a più spigoli raccolti in un conoide non manifold ammettono un numero pari qualsiasi di facce comuni a uno spigolo, si distingue interno ed esterno

Formula di Eulero senza buchi V - E + F = 2 V = vertici E = lati F = facce

Schemi a suddivisione spaziale sono: mesh - conformi al contorno BSP tree - non conformi al contorno Mesh possono essere organizzate in tetraedri, esaedri o altri poliedri - usate nel calcolo ad elementi finiti. Binary Space Partition Trees sono suddivisioni ricorsive dello spazio 3D in regioni disgiunte, la radice denota un piano separatore - un esempio è octree

Si possono anche usare griglie rettilinee deformabili che si conformano al contorno, altrimenti il contorno è approssimato Rappresentazione a superfici mediali: generalizzano assi mediali per descrizione di superfici, sono poco utilizzate:

Formalmente è definito come la chiusura del luogo dei centri di dischi inscritti nel dominio o del luogo dei centri delle sfere massimali inscritte nel dominio. Variando il raggio delle sfere si ottengono dilatazioni dei solidi. La conversione tra schemi di rappresentazione non è semplice: da CSG a Brep è ben compresa e facile; da Brep a CSG ci sono punti oscuri in particolare per conformare la rappresentazione al contorno; nel caso dei poliedri la conversione Brep -> CSG è analoga alla conversione Brep -> BSP tree.

Ogni sistema di modellazione deve risolvere i problemi: intersezione tra superfici offset di una superficie (luogo di punti a distanza costante da una superficie blending - superficie smooth tra due superfici deformazioni locali o globali

Approcci emergenti sono: Feature based design Constraint based design Feature based consiste nel definire elementi di forma aventi un significato specifico (slitte, fori, tasche, …) Modellazione a vincoli significa imporre vincoli numerici o geometrici (anche fisici o strutturali) a un modello. La valutazione dei vincoli è assai complessa: il problema può essere sovradeterminato (troppi vincoli), sottodeterminato (troppo pochi); in generale si esprimono con sistemi di equazioni.

Suddivisione spaziale

Voxel

Meta balls o soft balls simulare forme naturali, soffici, prive di bordi rappresentare forme costruite con la creta meta balls: simili a gocce d’acqua, quando si avvicinano si uniscono; si possono descrivere con funzioni di potenziale

Ad esempio si immagini di avvolgere con un drappo una scena fatta di forme geometriche

Esempi di fusione

Modellazione con soft balls una sfera soffice cui è stato sottratto un cubo soffice

Primitive soft Derivano da superfici equipotenziali, ovvero campi scalari descritti da una funzione f(x,y) dipendente da una distanza d. La funzione f(x,y) è implicita! es: circonferenza: forma esplicita parametrica: x(t)=r*cos(t); y(t)=r*sin(t) forma implicita: f(x,y)=r*r=x*x+y*y=x2+y2 risolvere per funzioni implicite è complesso

Primitive soft (cont) La forma implicita identifica un lugo di punti, a noi interessa trovare tutti i punti che soddisfano l’equazione, dobbiamo valutarla per prove ed errori

Primitive soft (cont) Se abbiamo due o più equazioni implicite possima sommarle, dovremo valutare il campo risultante: in ogni punto dello spazio il campo è il risultato del contributo dei due (o più) campi descritti da ogni singola funzione

Primitive soft (cont) dobbiamo avere: una funzione generatrice di un campo, in ogni punto P il campo è funzione della distanza d(P) da un punto dato (es. campo termico, campo di intensità di illuminazione, ...) una funzione che descrive il “potenziale del campo” f(d(P)). Dà il valore del campo in ogni punto (funzione di un vettore ad argomenti scalari, es: f(P) = (1-d2/R2)2 con d<= R (distanza) se abbiamo più generatori del campo dobbiamo miscelarne il contributo per valutare il campo di potenziale totale il campo risultante si rappresenta visualizzando superfici equipotenziali, o iso superfici. Si usa molto marching cubes

La modellazione con funzioni implicite e isosuperfici si presta alla animazione di forme e alla soluzione efficiente della ricerca di collisioni Esempi di MetaBalls