Genel bakış
Aşağıdaki işlevler dördüncüleri yönetir.
Özet
Fonksiyonlar | |
---|---|
rsQuaternionEkle | İki dördün toplama |
rsQuaternionConjugate | Kuterniyonu eşle |
rsQuaternionNokta | İki dördün nokta çarpımı |
rsQuaternionGetMatrixUnit | Bir dördün dönme matrisi alma |
rsQuaternionLoadDöndür | Rotasyon dördünü oluşturma |
rsQuaternionLoadLoadUnit | Rastgele bir birim vektör hakkındaki dönüşü temsil eden kuaterniyon |
rsQuaternionMultiply | Bir dördünü skaler veya başka bir dördün ile çarpma |
rsQuaternionNormalleştirme | Bir dörtlüyü normalleştirme |
rsQuaternionSet | Dörtgen oluştur |
rsQuaternionSlerp | İki dördün arasındaki küresel doğrusal interpolasyon |
Fonksiyonlar
rsQuaternionAdd : İki dördün ekleyin
void rsQuaternionAdd(rs_quaternion* q, tutarlı rs_quaternion* rhs); |
Parametreler
q | Eklenecek hedef dördün. |
---|---|
sa | Eklenecek kuaternion. |
İki dördün toplanması, ör. *q += *rhs;
rsQuaternionConjugate : Kuternionları eşleyin
void rsQuaternionConjugate(rs_quaternion* q); |
Parametreler
q | Değiştirilecek kuaternion. |
---|
Kuterniyonu birleştirir.
rsQuaternionDot : İki dördün nokta çarpımı
kayan noktalı rsQuaternionDot(const rs_quaternion* q0, tutarlı rs_quaternion* q1); |
Parametreler
ç0 | İlk dördün. |
---|---|
ç1 | İkinci dördün. |
İki dördün nokta çarpımını döndürür.
rsQuaternionGetMatrixUnit : Bir dördenden rotasyon matrisi alın
void rsQuaternionGetMatrixUnit(rs_matrix4x4* m, tutarlı rs_quaternion* q); |
Parametreler
dk. | Sonuç matrisi. |
---|---|
q | Normalleştirilmiş dördün. |
Normalleştirilmiş dördün temelinde bir dönme matrisi hesaplar.
rsQuaternionLoadLoad : Rotasyon dördünü oluşturun
void rsQuaternionLoadLoad(rs_quaternion* q, float rot, float x, float y, float z); |
Parametreler
q | Hedef dördün. |
---|---|
çürük | Döndürülecek açı. |
x | X bileşeni. |
y | Bir vektörün Y bileşeni. |
z | Bir vektörün Z bileşeni. |
Rastgele bir vektör hakkındaki dönüşü temsil eden bir dördün yükler (birim olması gerekmez)
rsQuaternionLoadLoadUnit : Rastgele bir birim vektör hakkındaki rotasyonu temsil eden kuaternion
void rsQuaternionLoadLoadUnit(rs_quaternion* q, float rot, float x, float y, float z); |
Parametreler
q | Hedef dördün. |
---|---|
çürük | Döndürülecek açı (radyan cinsinden). |
x | X bileşeni. |
y | Y bileşeni. |
z | Z bileşeni bulunur. |
Rastgele bir birim vektör hakkında dönmeyi temsil eden bir dördün yükler.
rsQuaternionMultiply : Bir dördünü skaler veya başka bir dördün ile çarpın
void rsQuaternionMultiply(rs_quaternion* q, sabit rs_quaternion* rhs); | |
void rsQuaternionMultiply(rs_quaternion* q, kayan skaler); |
Parametreler
q | Hedef dördün. |
---|---|
skaler | Dörtgenin çarpılacağı skaler değeri. |
sa | Hedef dördün ile çarpılması için dördüncüsü. |
Bir dördeyi skaler veya başka bir dördeyle çarpar, ör. *q = *q * scalar;
veya *q = *q * *rhs;
.
rsQuaternionNormalize : Bir dördeyi normalleştirme
void rsQuaternionNormalize(rs_quaternion* q); |
Parametreler
q | Normalleştirilecek kuaternion. |
---|
Kuaterniyonu normalleştirir.
rsQuaternionSet : Çeyrek oluşturun
void rsQuaternionSet(rs_quaternion* q, tutarlı rs_quaternion* rhs); | |
void rsQuaternionSet(rs_quaternion* q, kayan w, kayan x, kayan y, kayan z); |
Parametreler
q | Hedef dördün. |
---|---|
w | W bileşeni. |
x | X bileşeni. |
y | Y bileşeni. |
z | Z bileşeni. |
sa | Kaynak dördüncüsü. |
Dört bileşeninden veya başka bir dördenden bir dördün oluşturur.
rsQuaternionSlerp : İki dördün arasındaki küresel doğrusal interpolasyon
void rsQuaternionSlerp(rs_quaternion* q, tutarlı rs_quaternion* q0, tutarlı rs_quaternion* q1, kayan t); |
Parametreler
q | İnterpolasyondan sonuç dördüncüsü. |
---|---|
ç0 | Birinci giriş dördüncüsü. |
ç1 | İkinci girdi dördünü. |
t | Ara değer olarak ne kadar hesaplama yapılacağı. |
İki dördün arasında küresel doğrusal interpolasyon gerçekleştirir.