Ringkasan
Fungsi berikut memanipulasi kuarternion.
Ringkasan
Fungsi | |
---|---|
rsQuaternionAdd | Tambahkan dua angka empat |
rsQuaternionConjugate | Menggabungkan kuaternion |
rsQuaternionDot | Perkalian titik dari dua kuaternion |
rsQuaternionGetMatrixUnit | Mendapatkan matriks rotasi dari kuaternion |
rsQuaternionLoadRotate | Membuat kuaternion rotasi |
rsQuaternionLoadRotateUnit | Kuaternion yang mewakili rotasi terkait vektor satuan arbitrer |
rsQuaternionMultiply | Mengalikan kuaternion dengan skalar atau kuaternion lainnya |
rsQuaternionNormalize | Menormalisasi kuarternion |
rsQuaternionSet | Membuat angka empat |
rsQuaternionSlerp | Jenis interpolasi linier bola antara dua kuaternion |
Fungsi
rsQuaternionAdd : Tambahkan dua angka empat
void rsQuaternionAdd(rs_quaternion* q, const rs_quaternion* rhs); |
Parameter
q | Kuaternion tujuan yang akan ditambahkan. |
---|---|
rhs | Kuaternion untuk ditambahkan. |
Menambahkan dua angka empat, yaitu *q += *rhs;
rsQuaternionConjugate : Menyusun kuarternion
membatalkan rsQuaternionConjugate(rs_quaternion* q); |
Parameter
q | Kuaternion yang akan diubah. |
---|
Mengkonjugasikan angka empat.
rsQuaternionDot : Perkalian titik dari dua angka empat
float rsQuaternionDot(const rs_quaternion* q0, const rs_quaternion* q1); |
Parameter
p0 | Kuaternion pertama. |
---|---|
Kuartal 1 | Kuaternion kedua. |
Menampilkan perkalian titik dari dua angka empat.
rsQuaternionGetMatrixUnit : Mendapatkan matriks rotasi dari kuaternion
void rsQuaternionGetMatrixUnit(rs_matrix4x4* m, const rs_quaternion* q); |
Parameter
m | Matriks yang dihasilkan. |
---|---|
q | Kuaternion yang dinormalisasi. |
Menghitung matriks rotasi dari kuaternion yang dinormalisasi.
rsQuaternionLoadRotate : Membuat kuaternion rotasi
void rsQuaternionLoadRotate(rs_quaternion* q, {i>float rot<i}, float x, float y, float z); |
Parameter
q | Kuaternion tujuan. |
---|---|
busuk | Sudut yang digunakan untuk memutar. |
x | Komponen X dari suatu vektor. |
y | Y dari sebuah vektor. |
z | Komponen Z dari vektor. |
Memuat kuarternion yang merepresentasikan rotasi tentang vektor arbitrer (tidak harus berupa satuan)
rsQuaternionLoadRotateUnit : Kuaternion yang mewakili rotasi tentang vektor unit arbitrer
rsQuaternionLoadRotateUnit(rs_quaternion* q, {i>float rot<i}, float x, float y, float z); |
Parameter
q | Kuaternion tujuan. |
---|---|
busuk | Sudut yang akan berputar, dalam radian. |
x | Komponen X dari vektor. |
y | Y dari vektor. |
z | Komponen Z vektor. |
Memuat kuarternion yang mewakili rotasi tentang vektor unit arbitrer.
rsQuaternionMultiply : Mengalikan satu angka empat dengan skalar atau angka empat lainnya
void rsQuaternionMultiply(rs_quaternion* q, const rs_quaternion* rhs); | |
void rsQuaternionMultiply(rs_quaternion* q, skalar float); |
Parameter
q | Kuaternion tujuan. |
---|---|
skalar | Skalar untuk mengalikan kuaternion. |
rhs | Kuaternion untuk mengalikan kuaternion tujuan. |
Mengalikan kuaternion dengan skalar atau angka empat lainnya, misalnya *q = *q * scalar;
atau *q = *q * *rhs;
.
rsQuaternionNormalize : Menormalisasi kuarternion
void rsQuaternionNormalize(rs_quaternion* q); |
Parameter
q | Kuaternion untuk melakukan normalisasi. |
---|
Menormalisasi kuarternion.
rsQuaternionSet : Membuat angka empat
void rsQuaternionSet(rs_quaternion* q, const rs_quaternion* rhs); | |
rsQuaternionSet(rs_quaternion* q, float w, float x, float y, float z); |
Parameter
q | Kuaternion tujuan. |
---|---|
w | Komponen W. |
x | Komponen X. |
y | Y. |
z | Komponen Z. |
rhs | Kuaternion sumber. |
Membuat angka empat dari empat komponennya atau dari kuaternion lain.
rsQuaternionSlerp : Jenis interpolasi linier sferikal antara dua angka empat
void rsQuaternionSlerp(rs_quaternion* q, const rs_quaternion* q0, const rs_quaternion* q1, float t); |
Parameter
q | Kuaternion hasil dari interpolasi. |
---|---|
p0 | Kuaternion input pertama. |
Kuartal 1 | Kuaternion input kedua. |
t | Seberapa banyak interpolasi yang terjadi. |
Melakukan interpolasi linier sferis antara dua angka empat.