• Non ci sono risultati.

Superficie implicita

N/A
N/A
Protected

Academic year: 2021

Condividi "Superficie implicita"

Copied!
5
0
0

Testo completo

(1)

Superficie implicita

• E’ il luogo degli zeri di una funzione data:

(tutti i punti p t.c. f (p) = 0 )

• Nota: definiscono un “dentro” e un “fuori”:

– f (p) < 0 <==> p dentro – f (p) > 0 <==> p fuori

– f (p) = 0 <==> p sulla superficie

…sono oggetti solidi! (superfici “watertight”)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 4 / 1 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

R R

f : 3

Superficie implicita

• Es…

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 4 / 1 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

2 2 2

2 y z R

x z y x

f = + + −

 

 

z

x y

Implicit surfaces: categories

• Algebraic surfaces: f () is a polynomial

• Quadratic surfaces : f () degree is 2,

– aka «quadrics»

– important class!

• simple equations, good extressive power

• e.g. perfect spheres (see?)

• Cubic surfaces: f () degree is 3

• etc

Implicit surfaces: good or bad?

The Good:

• Compact

• CSG! (see later)

• Good model for both fluids and solids The Bad:

• Difficult to render

for rasterization-based pipelines

– but, easy for ray-tracers?

(2)

Giocare con le sup implicite: GSM

• Siano A e B oggetti solidi delimitati da superfici implicite, con funzioni f A e f B

• Posso definire (come sup implicite):

– inversioni: - f A

– intersezioni: max( f A , f B ) – unioni: min( f A , f B ) – scavi: max( f A , - f B )

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 4 / 1 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

A B

Constructive Solid Geometry CSG

/

Geometric Solid Modelling

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 4 / 1 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

min max min

max

--

f 4 f 5

f 3

f 1 f 2

Constructive Solid Geometry

CSG

(3)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 4 / 1 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

Sup implicite:

Rendering con rasterization based?

superfici implicite

nb: non c'e' un modo solo per farlo.

Modo + semplice (non ottimo): campionare volume, ottengo voxel, estrarre isosuperfice a valore 0

triangle mesh

Superfici di suddivisione

• Subdivision surfaces

– Raffinamento progressivo della mesh da lowest res hi res

– Ottimo per oggetti dall’aspetto smooth, organico e “pulito”

Superfici di suddivisione

• Modo molto diffuso per costruire mesh

– 1: fare mesh di controllo

• a bassa risoluzione

• "a mano"

– 2: raffinarla automaticamente

• iterativamente

• (ad ogni interazione si aggiungono facce e vertici)

• molti schemi matematici differenti

– con diverse peoprietà

Superfici di suddivisione

• Esempio: schema butterfly (per mesh triangolari)

– e' uno degli schemi 1=>4

(in un passo di suddivisione, da ogni triangolo se ne ottengono 4) (aggiunta di un vertice per ogni edge)

– MA... quali coordinate assegnare al nuovo vertice?

Ogni schema di suddivisone ha la sua formula. Ad esempio...

Passo suddivisonedi

(4)

POS( ) = ( POS( ) + POS( ) ) + ( POS( ) + POS( ) )

+ ( POS( ) + POS( ) + POS( ) + POS( ) )

Superfici di suddivisione

• Esempio: schema butterfly

168 8

16 162

162

16-1

16-1 16-1

16-1

168 162 -116

Superfici di suddivisione Ad ogni passo di suddivisione

• (x,y,z) dei nuovi vertici inseriti

– formula (estrapolazione dei vicini)

• (x,y,z) dei vecchi vertici

– si tiene la vecchia pos (schemi “interpolativi”) oppure

– formula (estrapolazione) (schemi “approssimativi”)

Esempio: con schema Catmull-Clark

level 0

(“control mesh”)

level 1

level 2 level 3

lvl ∞

(“limit surface”)

Differenze fra gli schemi di suddivisione

• interpolativi VS approssimativi

• solo triangoli, solo quads, qualunque cosa

• incremento complessità

– (per ogni passo di suddivisione)

• proprietà della limit surface

– (esistenza, smoothness)

• esistenza forma chiusa per la limit surface

– (esatta o approssimata)

• …

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 1 / 1 2 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

(5)

Superfici di suddivisione

mesh di controllo

mesh finale

Superfici di suddivisione

Anche iterativamente:

1- Modellare “control mesh”

(editing manuale)

2- Suddivisione

(un passo)

3- Ritocco!

(editing manuale)

4- Goto 2

(fino a raggiungimento risultato voluto alla risuolzione voluta)

Molti schemi…

• Catmull-Clark

• Doo-Sabin

• Loop

• sqrt(3)

• Butterfly

• Mid-edge

• ….

M a r c o T a r i n i ‧ C o m p u t e r G r a p h i c s ‧ 2 0 1 1 / 1 2 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

recente aumento

di popolarità

(GPU friendliness)

Riferimenti

Documenti correlati

Svolgimento.. Per il teorema di Leibniz, la serie converge.. Calcoliamo separatamente due primitive.. Bisogna quindi studiare la convergenza dell’integrale in 0.. Per tali x studiamo

La brutta copia non va consegnata: viene corretto solo ci` o che ` e scritto sul foglio intestato.. Ogni affermazione deve essere

La brutta copia non va consegnata: viene corretto solo ci` o che ` e scritto sul foglio intestato.. Ogni affermazione deve essere

La brutta copia non va consegnata: viene corretto solo ci` o che ` e scritto sul foglio intestato.. Ogni affermazione deve essere

3) SI RICORDA CHE IL CRITERIO ASINTOTICO DELLA RADICE E DEL RAPPORTO DANNO INFORMAZIONI ANCHE SULLA CONVERGENZA SEMPLICE: SE IL LIMITE ` E &gt; 1, ALLORA LA SERIE NON CONVERGE

[r]

[r]

In particolare, precisare la presenza di punti di non derivabilità e trovare gli intervalli