Конвертация левостороннего базиса в кватернион

Помогите пожалуйста построить кватернион из левостороннего базиса. Я нашел решение для правосторонней системы, но там нет объяснения, как это сделать для левосторонней.


Как я определил базис:

  • Левосторонний
  • Ось вверх: Y
  • Ось правая: X
  • Ось вперед: Z

введите сюда описание изображения


Заранее всем очень благодарен !


Ответы (1 шт):

Автор решения: Edward

Огромная благодарность @HolyBlackCat

Для ПСК и ЛСК формулы абсолютно идентичны. Допустим у нас есть ориентация в виде 3х3 матрицы:

Matrix<3,3> orientation
{
    X.x, Y.x, Z.x,
    X.y, Y.y, Z.y,
    X.z, Y.z, Z.z
};

Элементы этой матрицы имеют одни и те же значения как в ЛСК, так и в ПСК. Элементы кватерниона, который будет построен из этой матрицы, будут иметь одни и те же значения как в ЛСК, так и в ПСК. Это было проверено с помощью двух независимых сторонних SDK: UnrealEngine (ЛСК) и HudiniFX (ПСК).

→ Ссылка