Penskalaan
Sebagian besar CAD dan aplikasi gambar menyediakan fitur yang menskalakan output yang dibuat oleh pengguna. Aplikasi yang menyertakan kemampuan penskalaan (atau zoom) memanggil fungsi SetWorldTransform untuk mengatur transformasi ruang dunia ke ruang halaman yang sesuai. Fungsi ini menerima penunjuk ke struktur XFORM yang berisi nilai yang sesuai. Anggota eM11 dan eM22 dari XFORM menentukan komponen penskalaan horizontal dan vertikal.
Saat penskalaan terjadi, garis vertikal dan horizontal (atau vektor), yang merupakan objek, direntangkan atau dikompresi sehubungan dengan sumbu x atau y. Ilustrasi berikut menunjukkan persegi panjang 20 demi 20 unit yang diskalakan secara vertikal hingga dua kali tinggi aslinya saat disalin dari ruang koordinat dunia ke ruang koordinat halaman.
Dalam ilustrasi sebelumnya, garis vertikal yang menentukan ukuran sisi persegi panjang asli 20 unit, sedangkan garis vertikal yang menentukan sisi persegi panjang berskala mengukur 40 unit.
Penskalan vertikal dapat diwakili oleh algoritma berikut.
y' = y * Dy
Di mana y' adalah panjang baru, y adalah panjang asli, dan Dy adalah faktor penskalakan vertikal.
Penskalan horizontal dapat diwakili oleh algoritma berikut.
x' = x * Dx
Di mana x' adalah panjang baru, x adalah panjang asli, dan Dx adalah faktor penskalakan horizontal.
Transformasi penskalaan vertikal dan horizontal dapat digabungkan menjadi satu operasi dengan menggunakan matriks 2-by-2.
|x' y'| = |Dx 0| * |x y|
|0 Dy|
Matriks 2 demi 2 yang menghasilkan transformasi penskalaan berisi nilai berikut.
|1 0|
|0 2|