Jade |
Lutilizzo sempre crescente di modelli 3D ad alta risoluzione utilizzati per aumentare il realismo di scene tridimensionali ha come contropartita la difficoltà di visualizzare tali scene interattivamente. Gli strumenti a disposizione sono due: lincremento delle prestazioni delle piattaforme hardware disponibili a livello economico (con lintroduzione di acceleratori grafici sempre più potenti) e lutilizzo di tecniche di semplificazione come quelle prese in esame nel presente lavoro. I due strumenti sono fortemente correlati; è infatti impensabile che laumento delle risorse hardware metta in secondo piano la necessità di utilizzo di tecniche software adeguate, poiché entrambe sono rivolte allaumento della banda di calcolo necessaria per incrementare il realismo e linterattività della scena. Il pregio di questo lavoro sta nellaver reso disponibile su una piattaforma economica un algoritmo di semplificazione finora disponibile soltanto su piattaforme hardware dedicate. Laver scelto di realizzare un Plug-In per un programma molto diffuso su Personal Computer, rientra quindi nella filosofia di questo progetto. Infatti in ambienti universitari e nella ricerca e sviluppo di grandi aziende, aree di punta per lo studio di tecniche sempre più sofisticate, vengono realizzate implementazioni su piattaforme hardware di grande potenza (Workstation e stazioni tipo Silicon Graphics).
Il modo più diffuso per rappresentare superfici tridimensionali al calcolatore è di scomporle in superfici poligonali piane elementari. Una superficie viene quindi rappresentata in forma esplicita per mezzo di un insieme di vertici (punti nello spazio in cui è immersa la superficie) uniti da poligoni elementari. Questi ultimi devono essere facilmente trattabili a livello matematico per accelerarne le operazioni di spostamento e ridisegno. Per questo, generalmente, si prediligono i triangoli che uniscono anche la flessibilità nella costruzione di oggetti 3D complessi. Si capisce che, data la natura piana di questa primitiva, la modellazione accurata di superfici complesse richiede luso di svariate centinaia, se non di migliaia, di facce. Con laumentare di queste diventa difficile gestire operazioni in tempo reale, come il rendering interattivo. Si avverte la necessità di avere strumenti idonei alla semplificazione di queste. Lesigenza è tanto sentita quanto quella di disporre di modelli sufficientemente complessi di oggetti. Infatti essi diventano addirittura intrattabili quando descritti da troppi poligoni. Nel corso della trattazione sarà fatto costante riferimento alle superfici 3D descritte per mezzo di un insieme di vertici e di poligoni elementari (generalmente triangoli). Saranno chiamate genericamente mesh e denotate con la seguente notazione: M(V,F) dove V è linsieme di vertici e F linsieme delle facce che la compongono. Un altro attributo importante sono gli spigoli o edges definiti come i bordi delle facce. La rappresentazione di una mesh può essere scissa in due componenti essenziali: la rappresentazione topologica e quella geometrica. La prima mette in relazione i vincoli nella disposizione delle facce. Per mezzo di questa possono essere studiate le caratteristiche di una mesh per mezzo del grafo di relazione. Possono essere rilevate caratteristiche come la presenza di buchi, maniglie e di componenti sconnesse. La rappresentazione geometrica costituisce limmersione della topologia della mesh nello spazio tridimensionale. Due mesh topologicamente identiche possono essere molto dissimili geometricamente. Una superficie è detta n-manifold se per ogni punto della stessa è possibile individuare un intorno di Rn. Nel caso di mesh triangolari tale proprietà viene definita dalla seguente relazione topologica: una mesh è 2-manifold se e solo se ogni edge della mesh appartiene ad uno o due triangoli e, per ogni vertice, tutti i triangoli a cui appartiene formano ununica catena. Si definisce una configurazione di triangoli linsieme dei triangoli che coprono unarea locale della mesh. Mentre si definisce una stella di triangoli centrata in v linsieme dei triangoli che hanno v tra i loro vertici. |