180 likes | 665 Views
Vize Öncesi. Konular. Temel Grafik Kavramları 2B Görüntüleme – Rasterization 2B Görüntüleme – Kırpma 3B Görüntüleme – İzdüşümler 3B Görüntüleme – Kamera ve Görüntü Hacmi Oluşturma 3B Görüntüleme – Görünür Yüzey Tespiti Ayrıca, diğer konulardan da kısa cevaplı sorular gelebilir.
E N D
Konular • Temel Grafik Kavramları • 2B Görüntüleme – Rasterization • 2B Görüntüleme – Kırpma • 3B Görüntüleme – İzdüşümler • 3B Görüntüleme – Kamera ve Görüntü Hacmi Oluşturma • 3B Görüntüleme – Görünür Yüzey Tespiti • Ayrıca, diğer konulardan da kısa cevaplı sorular gelebilir.
Örnek Soru 1 • Liang-Barsky algoritmasını kullanarak aşağıdaki doğruyu, belirtilen alan içine kırpınız. x = 1 x = 7 y = 6 P2(8,5) y = 2 P1(0,0)
Liang-Barsky Algoritması u1 = 0, u2 = 1 k = 1, 2, 3, 4 için pk değerini bul (p1= - Δx, q1 = x1 - xwmin , p2 = Δx q2= xwmax – x1 p3 = -Δy, q3= y1 - ywmin, p4= Δy q4= ymax– y1 ) eğer pk < 0 ise rk = qk / pk u1 = max(u1, rk) değilse eğer pk > 0 ise rk = qk / pk u2 = min(u2, rk) değilse kırpma kenarlarına paralel olduğundan duruma göre kırpılır eğer u1 > u2 ise doğru kırpma alanı dışındadır, kırpma yapılmaz. x2 = x1 + u2Δx, y2 = y1 + u2 Δy x1 = x1 + u1Δx, y1 = y1 + u1Δx
Çözüm Δx = 8, Δy = 5 k = 1 p1 = -8, q1 = 0-1=-1, r1 = 1/8 u1 = max {1/8, 0} = 1/8 k = 2 p2 = 8, q2 = 7-0=7, r2 = 7/8 u2 = min {7/8, 1} = 7/8 k = 3 p3 = -5, q3 = 0-2=-2, r3 = -2/-5 u1 = max {1/8, 2/5} = 2/5 k = 4 p4 = 5, q4 = 7-0=7, r4 = 7/5 u2 = min {7/5, 7/8} = 7/8 P1 = (0 + 2/5 . 8, 0 + 2/5 . 5) = (16/5, 2) P2 = (0 + 7/8 . 8, 0 + 7/8 . 5) = (7, 35/8) x = 1 x = 7 u2 = 7/8 y = 6 u1 = 2/5 P2(8,5) u1 = 1/8 y = 2 P1(0,0)
Örnek Soru 2 • Bir 3B sahneye bir ayna koymak istenmektedir. Ayna; bir ekseni y eksenine, diğer ekseni de xz düzlemine paralel ve köşe noktaları şekildeki gibi olan 3B bir dikdörtgen olarak tanımlanmıştır. • Sahnedeki bütün nesnelerin aynanın önünde olduğunu varsayarak, nesnelerin aynada yansımasını oluşturacak dönüşüm matrisini (matrisler çarpımı olarak) yazınız. y xzdüzlemine paralel x z
Çözüm • Soruda istenen aslında bir düzleme göre yansımadan ibarettir. • Ancak düzlemin konumu gereği, bir birleşik dönüşüm şeklinde yapılabilir. • Sırayla • Ayna düzlemi yz düzlemi ile hizalanır. • yz düzlemine göre yansıma hesaplanır. • Ayna düzlemi ilk duruma geri getirilir.
Çözüm y • Hizalama için P1 y eksenine taşınır. • P2 z ekseni üzerine gelecek şekilde döndürülür. x z y x z
Çözüm • yz eksenine göre yansıma için sadece x değerlerinin işaretini değiştirmek yeterlidir. • İlk duruma getirmek için işlemler tersten yapılır. Ayna, saatin tersi yönünde 45 derece döndürülür; P1noktası (3,10,-1) konumuna taşınır. • Böylece birleşik dönüşüm matrisi T(3,0,-1)Ry(45)Refyz( )Ry(-45)T(-3,0,1) olarak bulunur. y x z
Örnek Soru 3 Sanal bir kamera için aşağıdaki özelliklere sahip olan bir görüntüleme hacmi tanımlanmıştır. • Görüntüleme açısı: 60° • Kırpma pencerelerinin en boy oranı(aspectratio): 0.8 • Yakın düzlemin bakış noktasına uzaklığı: 4 • Uzak düzlemin bakış noktasına uzaklığı: 100 Yakın ve uzak kırpma pencerelerinin kenar uzunluklarını bulunuz.
Çözüm • Perspektif izdüşümde görüntüleme hacmi kesik piramit şeklindedir. • Piramide yandan bakıldığında benzer üçgenler görülür. • Bu üçgenlerin tepe açıları görüntüleme açısı, tabana dik inen yükseklikler ise sırasıyla yakın ve uzak düzlemlerin bakış noktasına olan uzaklıklarıdır.
Çözüm Yakın pencerenin boyu = 2 . yy = 2 . tan 30 . 4 = 4.62 Yakın pencerenin eni = 4.62 * aspect = 4.62 * 0.8 = 3.7 yy yu 30 ° 4 100 Uzak pencerenin boyu = 4.62 * 25 = 115.5 Uzak pencerenin eni = 115.5 * aspectya da 3.7 * 25 = 92.5
Örnek Soru 4 • biçimindeki kayma (shear) dönüşümünü döndürme ve ölçekleme dönüşümleri cinsinden ifade ediniz.
Çözüm • Döndürme ve ölçekleme matrisleri şunlardır. • Bu iki matrisi çarparsak • Kayma matrisi ile eşitlendiğinde • sx ve sy değerleri yerine yazıldığında • Sonuç olarak kayma dönüşüm matrisi şu şekildedir.
Örnek Soru 5 • A(0,0), B(1,1) ve C(5,2) noktaları ile tanımlanan bir üçgen iki katına büyütülecektir. Büyütme sonunda C noktasının yerinin değişmemesi istenmektedir. • Bu dönüşümü yapacak matrisi bulunuz.
Çözüm • C noktasının yerinin değişmemesi için büyütme işleminden etkilenmemesi gerekir. Bunun için de ilk olarak bu nokta orijine taşınır. • Ölçekleme dönüşümü ile büyütme işlemi yapılır. • Üçgenin C noktası ilk yerine taşınır. (ilk işlemin tersi)
Örnek Soru 6 • Bir çokgen için aşağıdaki dönüşüm matrisi tanımlanmıştır. • Bu dönüşümü hangi ifade doğru olarak açıklamaktadır? • Önce nesneyi (5,3) kadar taşır, sonra z ekseni etrafında saat yönünde 90° döndürür. • Önce nesneyi (5,3) kadar taşır, sonra z ekseni etrafında saatin tersi yönünde 90° döndürür. • Önce nesneyi z ekseni etrafında saatin tersiyönünde 90° döndürür, sonra (5,3) kadar taşır. • Önce nesneyi z ekseni etrafında saat yönünde 90° döndürür, sonra (5,3) kadar taşır. • Önce nesneyi z eksenine göre yansıtır, sonra (5,3) kadar taşır. • Önce nesneyi (5,3) kadar taşır, sonra z eksenine göre yansıtır.
Çözüm • Dönüşüm matrisi incelendiğinde, matrisi z ekseni etrafında 90° döndürme ve (5,3) kadar taşıma dönüşümlerinin oluşturduğu anlaşılmaktadır. • Önce hangisinin yapıldığı, matrisin dördüncü sütununa bakılarak anlaşılabilir. Dördüncü sütunun (5,3,0,1) olması, çarpım sonrasında bu sütunun değişmediğini bunun için de çarpımın sırasının Taşıma X Döndürme olduğunu göstermektedir. -sin 90° cos 90° sin 90°