Trasformazione degli spazi di coordinate
Uno spazio di coordinate è uno spazio planare basato sul sistema di coordinate cartesiane. Questo sistema fornisce un mezzo per specificare la posizione di ogni punto in un piano. Richiede due assi che sono perpendiculari e uguali in lunghezza. La figura seguente mostra uno spazio di coordinate.
Il sistema supporta quattro spazi di coordinate, come descritto nella tabella seguente.
Spazio delle coordinate | Descrizione |
---|---|
world | Usato facoltativamente come spazio di coordinate iniziale per le trasformazioni grafiche. Consente di ridimensionare, tradurre, rotazione, shearing e reflection. Lo spazio mondiale misura 2^32 unità elevate di 2^32 unità wide. |
pagina | Usato come spazio successivo dopo lo spazio mondiale o come spazio iniziale per le trasformazioni grafiche. Imposta la modalità di mapping. Lo spazio pagina misura anche 2^32 unità elevate di 2^32 unità a larghezza. |
device | Usato come spazio successivo dopo lo spazio della pagina. Consente solo la traduzione, che garantisce l'origine dello spazio del dispositivo mappato alla posizione appropriata nello spazio del dispositivo fisico. Lo spazio dei dispositivi misura 2^27 unità elevate di 2^27 unità. |
dispositivo fisico | Spazio finale (output) per le trasformazioni grafiche. In genere si riferisce all'area client della finestra dell'applicazione; tuttavia, può includere anche l'intero desktop, una finestra completa (inclusa la cornice, la barra del titolo e la barra dei menu) o una pagina di stampante o carta plotter, a seconda della funzione che ha ottenuto l'handle al contesto del dispositivo. Le dimensioni fisiche del dispositivo variano in base alle dimensioni impostate dalla tecnologia display, stampante o plotter. |
Lo spazio delle pagine funziona con lo spazio del dispositivo per fornire alle applicazioni unità indipendenti dal dispositivo, ad esempio millimetri e pollici. Questa panoramica si riferisce allo spazio globale e allo spazio pagina come spazio logico.
Per rappresentare l'output in un dispositivo fisico, il sistema copia (o mappa) un'area rettangolare da uno spazio di coordinate alla successiva usando una trasformazione finché l'output non viene visualizzato nell'intero dispositivo fisico. Il mapping inizia nello spazio mondiale dell'applicazione se l'applicazione ha chiamato la funzione SetWorldTransform ; in caso contrario, il mapping si verifica nello spazio della pagina. Poiché il sistema copia ogni punto all'interno dell'area rettangolare da uno spazio a un altro, si applica un algoritmo denominato trasformazione. Una trasformazione modifica (o trasforma) le dimensioni, l'orientamento e la forma di oggetti copiati da uno spazio di coordinate in un altro. Anche se una trasformazione influisce su un oggetto nel suo complesso, viene applicata a ogni punto o a ogni riga nell'oggetto.
Nella figura seguente viene illustrata una trasformazione tipica eseguita usando la funzione SetWorldTransform .