Dikdörtgenler (Direct3D 9)

Direct3D ve Window programlaması boyunca, ekrandaki nesneler sınırlayıcı dikdörtgenler açısından adlandırılır. Sınırlayıcı dikdörtgenin kenarları her zaman ekranın kenarlarına paraleldir, bu nedenle dikdörtgen sol üst köşe ve sağ alt köşe olmak üzere iki noktayla açıklanabilir. Çoğu uygulama, ekrana bilgi eklerken veya isabet algılama gerçekleştirirken kullanılacak sınırlayıcı dikdörtgen hakkında bilgi taşımak için RECT yapısını kullanır.

C++'ta RECT yapısı aşağıdaki tanıma sahiptir.

typedef struct tagRECT { 
    LONG    left;    // This is the upper-left corner x-coordinate.
    LONG    top;     // The upper-left corner y-coordinate.
    LONG    right;   // The lower-right corner x-coordinate.
    LONG    bottom;  // The lower-right corner y-coordinate.
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT; 

Yukarıdaki örnekte, sol ve üst üyeler sınırlayıcı dikdörtgenin sol üst köşesinin x ve y koordinatlarıdır. Benzer şekilde sağ ve alttaki üyeler de sağ alt köşenin koordinatlarını oluşturur. Aşağıdaki çizimde bu değerleri nasıl görselleştirebileceğiniz gösterilmektedir.

sol, üst, sağ ve alt değerlerçizimi

Sağ kenardaki piksel sütunu ve alt kenardaki piksel satırı RECT'ye dahil değildir. Örneğin, bir RECT'yi {10, 10, 138, 138} üyeleriyle kilitlemek nesnenin 128 piksel genişlik ve yükseklikle sonuçlanmasıyla sonuçlanır.

Verimlilik, tutarlılık ve kullanım kolaylığı açısından tüm Direct3D sunu işlevleri dikdörtgenlerle çalışır.

Koordinat Sistemleri ve Geometri