Scalabilità

La maggior parte delle applicazioni CAD e di disegno offre funzionalità che consentono di ridimensionare l'output creato dall'utente. Le applicazioni che includono le funzionalità di ridimensionamento (o zoom) chiamano la funzione SetWorldTransform per impostare la trasformazione dello spazio mondiale appropriata su spazio pagina. Questa funzione riceve un puntatore a una struttura XFORM contenente i valori appropriati. I membri eM11 e EM22 di XFORM specificano rispettivamente i componenti di ridimensionamento orizzontale e verticale.

Quando si verifica la scalabilità , le linee verticali e orizzontali (o vettori), che costituiscono un oggetto, vengono estese o compresse rispetto all'asse x- o y. La figura seguente mostra un rettangolo di 20 unità a 20 unità ridimensionato verticalmente fino a due volte l'altezza originale quando è stata copiata dallo spazio delle coordinate mondiali allo spazio delle coordinate della pagina.

figura che mostra un piccolo rettangolo nello spazio del mondo e uno più alto nello spazio della pagina

Nella figura precedente le linee verticali che definiscono la misura laterale del rettangolo originale 20 unità, mentre le linee verticali che definiscono i lati del rettangolo scalato misurano 40 unità.

Il ridimensionamento verticale può essere rappresentato dall'algoritmo seguente.

y' = y * Dy 

Dove y' è la nuova lunghezza, y è la lunghezza originale e Dy è il fattore di ridimensionamento verticale.

Il ridimensionamento orizzontale può essere rappresentato dall'algoritmo seguente.

x' = x * Dx 

Dove x' è la nuova lunghezza, x è la lunghezza originale e Dx è il fattore di ridimensionamento orizzontale.

Le trasformazioni di ridimensionamento verticale e orizzontale possono essere combinate in un'unica operazione usando una matrice da 2 a 2.

|x' y'|  =  |Dx   0|  *  |x y| 
            |0   Dy| 

La matrice 2 by-2 che ha prodotto la trasformazione di ridimensionamento contiene i valori seguenti.

|1    0| 
|0    2|