bgc-c/docs/quaternion-rus.md

2.1 KiB
Raw Blame History

Кватернионы

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

Документация