Yazan: Şadi Evren ŞEKER

Bilgisayar grafiklerinde şekil değiştirme işlemlerinden birisidir. Bu işlemin amacı bir şekli mevcut konumunu ve şeklini bozulmadan bir eksen etrafında döndürmektir. Aşağıdaki örnekte gösterilen döndürme işleminin formülü verilmiştir:

x’ = r.cos(Φ+Θ)
y’ = r.sin(Φ+Θ)

Yukarıdaki bu formülasyonu aşağıdaki matris ile ifade etmek mümkündür:

cos Φ    -sin Φ
sin Φ     cos Φ

Bu döndürme matrisini çıkardıktan sonra aşağıdaki denklem yazılabilir:

P’ = R P

Buradaki R matrisi döndürme matrisidir. P ve P’ matrisleri ise sırasıyla noktanın ilk koordinatları ve son koordinatlarıdır.

Ayrıca döndürme işlemi merkezden kaydırılmış bir şekilde de yapılabilir. Yani merkez etrafında değil, aşağıdaki gibi bir nokta etrafında da yapılabilir:

Bu durumda yukarıdaki formüllerin kaydırılmış hali:

x’ = xr + (x-xr).cos Φ – (y-yr).sin Φ
y’ = yr + (x-xr).sin Φ + (y-yr).cos Φ

Yorumlar

  1. Abdurrahman ulusoy

    Bu durumda yukarıdaki formüllerin kaydırılmış hali:
    x’ = xr + (x-xr).cos Φ – (y-yr).sin Φ
    y’ = yr + (x-xr).sin Φ – (y-yr).cos Φ
    yazmışsınız.
    bu formülde teta yok. Bir hata mı var?

  2. Şadi Evren ŞEKER Article Author

    Hayır yok, bir noktanın, herhangi bir eksen ile yaptığı açının arttırıldığı miktar (ki yukarıdaki anlatımda ve sizin verdiğiniz formüllerde fi "Φ" olarak geçiyor ) kadar döndürülmesi yeterlidir. Bu durumu kutup koordinat olarak düşünebilirsiniz. Yani kartezyen uzaydaki döndürme işlemleri biraz karmaşık geliyor olabilir. Aslında yapılan işlem kutup koordinattaki açıyı arttırmak (veya azaltmak) ve ardından da kartezyen uzaya çevirmektir.

  3. Abdurrahman ulusoy

    fi açısından teta kadar döndürme değilde, herhangi bir açıdan fi kadar döndürme formülü oluyor bu anladığım kadarıyla.

  4. Şadi Evren ŞEKER Article Author

    evet, yukarıda açıklanan, herhangi bir noktaya r uzaklığında fi açısı kadar yapılan saat yönünün tersine (counter clockwise) döndürme için kullanılan formüldür.
    Nokta (xr, yr) koordinatlarında, uzaklık r ve dönüş açısı fi ile gösterilmiştir.

  5. Sercan Değirmenci

    y’ = yr + (x-xr).sin Φ – (y-yr).cos Φ
    Formulünde bir hata mı var? Formulün
    y’ = yr + (x-xr).sin Φ + (y-yr).cos Φ
    olması gerekiyor galiba...

  6. Joseph

    Bildiğim Hearn ve Baker'in kitabının aynısını yazmışsınız. Daha fazla ayrıntı beklerdik ama ne yapalım. Sağolun.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


× 9 = dokuz