x-y-z koordinat sistemini X-Y-Z koordinat sistemi ile çakışık hale getirmek için arka arkaya uygulanacak üç dönme işleminde kullanılan α, β, γ açılarına Euler açıları denir. İç dönüşüm yöntemi ile adım adım:
Açılar için pozitif ya da negatif yön sağ el kuralı ile belirlenir. Sağ elin baş parmağı dönme ekseni pozitif yönüne bakarken diğer dört parmak pozitif dönme yönünü gösterir.
Arka arkaya uygulanan bu dönmeler ile bir koordinat sistemini herhangi başka bir sisteme çakıştırmak mümkün olur. Farklı bir bakış açısı ile ikinci sistem başta birinci sistem ile çakışıktır, ve ard arda üç dönme işlemi ile son halini alır.
Uçakların kumandası için kullanılan:
açıları da bir tür Euler açısıdır.
Katı cisimlerin uzaydaki konumunu tanımlamak için bu cisimleri kendi geometrilerine uygun yeri belirli bir koordinat sistemi ile eşleştirmek gerekir. Örneğin şekildeki uçağın simülasyonunu yapan bir yazılım, uçağın güncel koordinat sistemi ile başlangıçtaki koordinat sistemi arasındaki Euler açıları ve taşınma miktarlarını transformasyon matrisine çevirip, uçağın model dönüşümünü 4x4 homojen matrise göre yapar ve sahnede uçağı o anki konumunda çizdirir.
Uçağın konum zaman grafiğine göre koordinatları sürekli güncellenecektir. Diğer bir düşünceyle uçağa iliştirildiğimiz koordinat sistemi değişecektir. Bu değişimi ifade etmenin en kolay yolu koordinat sistemine ait merkez noktasını ve 3 tane Euler açısını vermek olabilir.
Dikkat edilmesi gereken nokta şudur: Konumu değişen koordinat sistemi başlangıçta mutlak koordinat sistemi olarak düşündüğümüz referans ile çakışık olur. Sonrasında ilk önce z eksenindeki dönme uygulanır. Ardından N (düğüm çizgisi) etrafındaki β ile rotasyon ve üçüncü olarak Z ekseni etrafında rotasyon yapılır. Bütün dönmelerde pozitif negatif ayrımı sağ el kuralına uyar. Dönmeler sonucunda eksenler doğru oryantasyona ulaşır. Merkez noktanın taşınma işi bundan sonra gerçekleştirilir. 3 dönme ve 1 taşıma işlemi ile uçağın sanal dünyadaki veya gerçek dünyadaki koordinatları (3 pozisyon, 3 açı) olarak mutlak, değişmeyen bir referans sisteme göre hesaplanabilir.
Arka arkaya uygulanan Euler dönmeleri için iki farklı metod vardır. İç ve dış dönüşüm (intrinsic – extrinsic) rotations. Şu ana kadar anlatılan açılar iç dönüşüm (intrinsic) sistem olarak isimlendirilir.
Dönme işlemleri hareketli koordinat sistemine göre yapılır.
Açılar hiç değişmeyen x-y-z ana referans sistem doğrultularında verilir.
Yukarıdaki uçak örneğinde ise uçağın referansı değiştikçe dönme eksenleri de değişir. Mesela sapma (yaw ya da head) açısı doğal olarak yeni pozisyonunda alınır. Head açısının uçağın rotasını kumanda etmek için kullanıldığı düşünülürse bunu direksiyon açısı gibi modellemek çok da yanlış olmaz.
İç dönüşüm olsun dış dönüşüm olsun uygulama sırası dönme işlemlerinde çok önemlidir. Farklı sıralamalar ile aynı sonuç alınmaz.
Yukarıda tersi alınan M matrisi dönme, taşıma, ölçekleme gibi bir çok işlemin arka arkaya uygulanmasını içeren 4x4 bir kare matris olabilir. Bir noktayı bu matris ile dönüştürüp elde ettiğimiz yeni noktayı tekrar eski haline dönüştüren matris M nin tersini hesaplayarak elde edilebilir. Kare matrislerin tersini hesaplamak için veya çok bilinmeyenli denklemleri çözmek için lineer cebir kuralları kullanılır. Gauss-Jordan eleme, LU decomposition, Cramer yöntemi gibi nümerik çözüm algoritmaları ile sonuç elde edilebilir.
Yukarıda anlatılan yöntem en genel ve hesaplama maliyeti yüksek bir ters hesaplama yöntemidir. Arka arkaya uygulanan bir dizi dönme ve taşıma işleminin sonucu oluşan M matrisinin tersini almak için yukarıdaki gibi hesaplama yapılabilir.
Ortogonal olduğu bilinen bir matris için:
Matrisin tersi transpoze ile aynıdır. Dönme matrisleri ortogonaldir. (arka arkaya yapılan bir dizi dönme sonucu oluşan her dönme matrisi)
Ortogonal matris demek satır ve sütunları birbirine dik olan birim vektörlerden oluşan matris demektir.
Transpoze işlemi ise bir matrisin satır ve sütunlarını yer değiştirerek yeni bir matris elde etme işlemidir.
O matrisi ortogonaldir, satırlar bibirine dik birim vektörlerdir. Aynı şekilde sütunlarda birbirlerine dik birim vektörlerden oluşur.
Bir dönüşüm matrisi arka arkaya uygulanan pek çok farklı çarpım ile elde edilebilir. İşlem tarihçesini bilmediğimiz fakat toplam dönüşümü ifade eden matrisi bildiğimiz zaman, sıralı işlemleri ayrı ayrı bulmaya ayrıştırma (decomposition) denilir.
Örnek olarak gömlek cebinizde duran bir kalemi alıp masaya koyduğunuz vakit kalemin katı cisim dönüşümü geçirdiğini söyleyebiliriz. Kalemin kendi içinde şekli değişmez ama pozisyonu ve oryantasyonu değişir. Katı cisim dönüşümü taşıma ve dönme bileşenlerinden ibarettir. Ölçekleme, kesme, aynalama gibi işlemler cismin şeklini etkiler.
Katı cisim dönüşümlerine ait matrislerin dönme ve taşıma bileşenlerini ayrıştırmak çok zor olmaz, yanda görülen matriste dönmeye ve taşımaya ait sayılar doğal olarak birbirinden ayrılırlar. İşin içine ölçekleme, kesme gibi işlemler dahil olunca ayrıştırma biraz daha zorlaşır.
Literatürde bu problemin çözümü için yöntemler sunulmuştur:
Thomas, Spencer W. Decomposing a matrix into Simple Transformations. James Arwn, Graphics Gems II Academic press