2.1 KiB
2.1 KiB
Кватернионы
English version / Английская версия
Кватернионы — это гиперкомплексные числа, которые расширяют понятие комплексных чисел. Они состоят из одной действительной компоненты и трёх мнимых компонент:
q = s + ix + jy + kz
где:
- s, x, y, z ∈ R - действительные числа
- i, j, k - мнимые единицы, удовлетворяющие следующим условиям:
- i2 = j2 = k2 = ijk = -1
Кватернионы были открыты математиком Уильямом Гамильтоном и представлены публике в 1843 году. Они нашли широкое применение в компьютерной графике, робототехнике и физике для описания поворотов в трёхмерном пространстве.
Реализация кватернионов в библиотеке
В библиотеке есть два типа трёхмерных векторов:
- BGC_FP32_Quaternion - кватернион на основе чисел с плавающей запятой одинарной точности
- BGC_FP64_Quaternion - кватернион на основе чисел с плавающей запятой двойной точности
Определения структур:
typedef struct {
float s, x, y, z;
} BGC_FP32_Quaternion;
typedef struct {
double s, x, y, z;
} BGC_FP64_Quaternion;
Поля:
-
s - это вещественная часть кватерниона, буква выбрана от английского слова "scalar" - скалярная величина.
-
x, y, z - мнимые компоненты кватерниона.
-
- bgc_fp32_quaternion_reset
- bgc_fp64_quaternion_reset