• Bağış
  • 2 Boyutlu Döndürme (2D Rotation)

    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 Φ

    Benzer Yazılar:

    Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz '2 Boyutlu Döndürme (2D Rotation)' isimli yazı 04 Nov 2008 tarihinde, saat: 00:52 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam 1776 defa okunmuştur.

    Benzer yazıları Bilgisayar Grafiği (Computer Graphics) kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.


    Category: Bilgisayar Grafiği (Computer Graphics)
    4 responses to “2 Boyutlu Döndürme (2D Rotation)”
    1. Abdurrahman ulusoy says:

      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 says:

      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 says:

      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 says:

      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.

    Leave a Reply