Как получить угол с помощью GLM при наличии оси и кватерниона?

Я использую кватернион GLM для представления ориентации объекта.

По сути, я хотел бы добавить возможность извлечения угла оси из квата. Я не знаю, если это то, что я необходимость сделать; но использование для этого будет пытаться вращать куб по оси Y, чтобы увеличить угол, который мне нужен, чтобы сначала получить старый угол, верно? Так

cube.setOrientation(cube.getAngleOnAxis(0, 1, 0) + 5);

И это должно вращать куб на пять градусов, верно?

У меня проблема с реализацией функции getAngleOnAxis. Есть ли функция GLM, которая может извлечь угол?

Я не уверен, что на самом деле думал о правильном решении, поэтому было бы здорово, если бы кто-то с опытом мог объяснить это проще. Спасибо!

0

Решение

чтобы увеличить угол, мне нужно сначала получить старый угол, верно?

Весь смысл использования кватерниона это к не должен сделать это. Вы просто умножаете новый кватернион на старый, нормализуете результат, и это ваша новая ориентация.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]