VMatrix
4x4'lük bir matris.
Bu sayfa, matrisleri değiştirmek için kullanılabilecek tüm fonksiyonları listeler.
Bu nesne Matrix ile oluşturulabilir.
| Metametot | İkinci İşlenen | Açıklama |
|---|---|---|
__add |
VMatrix | Toplama işleminin sonucuyla yeni bir VMatrix döndürür. |
__eq |
any | 2 işleneni karşılaştırır, eğer ikisi de VMatrix ise, her bir bileşeni ayrı ayrı karşılaştırır. |
__mul |
VMatrix veya Vector | Çarpma işleminin sonucuyla yeni bir VMatrix veya Vector döndürür. |
__sub |
VMatrix | Çıkarma işleminin sonucuyla yeni bir VMatrix döndürür. |
__tostring |
[%f,\t%f,\t%f,\t%f]\n[%f,\t%f,\t%f,\t%f]\n[%f,\t%f,\t%f,\t%f]\n[%f,\t%f,\t%f,\t%f] formatında bir string döndürür. |
|
__unm |
Tersleme işleminin sonucuyla yeni bir VMatrix döndürür. |
Metotlar
Matrisin mutlak dönüşünü döndürür. Ölçeklendirilmiş matris beklenmedik sonuçlar üretebilir!
Vector VMatrix:GetForward()
Matrisin ileri yönünü alır.
Yani, w koordinatı hariç matrisin ilk sütunu.
VMatrix VMatrix:GetInverse()
Orijinal matrisi değiştirmeden ters çevrilmiş bir matris döndürür.
Determinantı 0 veya 0'a yakınsa (yani herhangi bir yöndeki "ölçeği" 0 ise) matrisin tersini alma işlemi başarısız olur.
Ayrıca bakınız: VMatrix:GetInverseTR.
VMatrix VMatrix:GetInverseTR()
Orijinal matrisi değiştirmeden ters çevrilmiş bir matris döndürür. Bu fonksiyon başarısız olmaz, ancak yalnızca öteleme ve/veya döndürme içeren matrislerde doğru çalışır.
Değiştirilmiş ölçeğe sahip bir matriste bu fonksiyonu kullanmak, yanlış bir ters çevrilmiş matris döndürebilir.
Başka değişiklikler içeren bir matrisin tersini almak için VMatrix:GetInverse'e bakın.
Matrisin sağ yönünü alır.
Yani, w koordinatı hariç matrisin ikinci sütununun tersi.
Vector VMatrix:GetTranslation()
Matrisin mutlak ötelemesini döndürür.
VMatrix VMatrix:GetTransposed()
Bu matrisin devriğini (her satır bir sütun olur) döndürür.
VMatrix:Identity()
Matrisi birim matris olarak başlatır.
Matrisin tersini alır.
Determinantı 0 veya 0'a yakınsa (yani herhangi bir yöndeki "ölçeği" 0 ise) matrisin tersini alma işlemi başarısız olur.
Eğer matris ters çevrilemezse, değiştirilmez.
Ayrıca bakınız: VMatrix:InvertTR.
VMatrix:InvertTR()
Matrisin tersini hızlıca alır. Bu fonksiyon başarısız olmaz, ancak yalnızca öteleme ve/veya döndürme içeren matrislerde doğru çalışır.
Değiştirilmiş ölçeğe sahip bir matriste bu fonksiyonu kullanmak, yanlış bir ters çevrilmiş matris döndürebilir.
Başka değişiklikler içeren bir matrisin tersini almak için VMatrix:Invert'e bakın. Bu fonksiyon daha hızlıdır.
boolean VMatrix:IsIdentity()
Matrisin birim matrise eşit olup olmadığını döndürür.
boolean VMatrix:IsRotationMatrix()
Matrisin bir rotasyon matrisi olup olmadığını döndürür.
Teknik olarak ileri, sağ ve yukarı vektörlerinin ortogonal (dik) ve normalize (birim) olup olmadığını kontrol eder.
Matrisin tüm alanlarının 0 olup olmadığını, yani bunun bir sıfır matrisi olup olmadığını kontrol eder.
Matrisi verilen açı kadar döndürür.
Matrisi bir rotasyon matrisiyle sağdan çarpar (A = AR).
Matrisi verilen vektörle ölçeklendirir.
Matrisi bir ölçeklendirme matrisiyle sağdan çarpar (A = AS).
VMatrix:ScaleTranslation( number scale )
Mutlak ötelemeyi verilen değerle ölçeklendirir.
VMatrix:SetForward( Vector forward )
Matrisin ileri yönünü ayarlar.
Yani, w koordinatı hariç matrisin ilk sütunu.
Matrisin sağ yönünü ayarlar.
Yani, w koordinatı hariç matrisin ikinci sütununun tersi.
VMatrix:SetTranslation( Vector translation )
Matrisin mutlak ötelemesini ayarlar.
VMatrix:SetUnpacked( number e11, number e12, number e13, number e14, number e21, number e22, number e23, number e24, number e31, number e32, number e33, number e34, number e41, number e42, number e43, number e44 )
Matrisin her bir bileşenini ayarlar.
Matrisin yukarı yönünü ayarlar.
Yani, w koordinatı hariç matrisin üçüncü sütunu.
Matrisi verilen vektör kadar öteler, yani vektörü ötelemeye ekler.
Matrisi bir öteleme matrisiyle sağdan çarpar (A = AT).
number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number VMatrix:Unpack()
Matrisin her bir bileşenini, sütunlardan önce satırları genişleterek döndürür.
VMatrix:Zero()
Matrisin tüm bileşenlerini 0'a ayarlar, bu aynı zamanda sıfır matrisi olarak da bilinir.
Bu fonksiyon, her elemanı manuel olarak ayarlamaktan daha verimlidir.
Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord