Trasformazione degli spazi di coordinate
Uno spazio coordinate è uno spazio planare basato sul sistema di coordinate cartesiano. Questo sistema consente di specificare la posizione di ogni punto su un piano. Richiede due assi perpendicolare e uguale a lunghezza. La figura seguente mostra uno spazio delle coordinate.
Il sistema supporta quattro spazi di coordinate, come descritto nella tabella seguente.
Spazio delle coordinate | Descrizione |
---|---|
mondo | Usato facoltativamente come spazio delle coordinate iniziale per le trasformazioni grafiche. Consente scalabilità, traslazione, rotazione, shearing e reflection. Lo spazio mondiale misura 2^32 unità di altezza di 2^32 unità di larghezza. |
pagina | Usato come spazio successivo dopo lo spazio globale o come spazio iniziale per le trasformazioni grafiche. Imposta la modalità di mapping. Lo spazio pagina misura anche 2^32 unità di larghezza di 2^32 unità. |
dispositivo | Usato come spazio successivo dopo lo spazio della pagina. Consente solo la traslazione, che garantisce l'origine dello spazio del dispositivo mappata alla posizione corretta nello spazio del dispositivo fisico. Lo spazio dispositivo misura 2^27 unità di altezza di 2^27 unità di larghezza. |
dispositivo fisico | Spazio finale (output) per le trasformazioni grafiche. In genere fa riferimento 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 carta della stampante o del tracciatore, a seconda della funzione che ha ottenuto l'handle al contesto del dispositivo. Le dimensioni del dispositivo fisico variano in base alle dimensioni impostate dalla tecnologia display, printer 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 di 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 fino a quando l'output non viene visualizzato nel dispositivo fisico. Il mapping inizia nello spazio globale dell'applicazione se l'applicazione ha chiamato la funzionesetWorldTransform; in caso contrario, il mapping si verifica nello spazio di pagina. Poiché il sistema copia ogni punto all'interno dell'area rettangolare da uno spazio a un altro, applica un algoritmo denominato trasformazione. Una trasformazione modifica (o trasforma) le dimensioni, l'orientamento e la forma degli 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 .
La figura seguente illustra una trasformazione tipica eseguita usando la funzione SetWorldTransform.