Комментарии 5
Прошу прощения! Я забыл про автогенерируемый .gitignore при сборке Библиотечного Крейта через Rust, изменения запушил в репозиторий, знакомтесь!
Насчет статьи, я удивлен приятно, что кто-то ознакомился. Я не спал уже второй день занимаясь курсовыми и научной статьей. Надо было сделать публикацию научную (или околонаучную), выбрал Хабр, потому что очень приятного мнения об этой площадке.
По данной статьей - это небольшой утрированный пункт диплома, над которым я работаю. Я также возможно вас сильно порадую оптимизацией задач небесной механики, по применению уравнения Кеплера для эллиптических орбит. Это был мой первый опыт, рад что вы высказались!
Известно, что каждый автор Хабра должен написать статью про кватернионы.
Такое мы всегда плюсуем.
Углы Эйлера, rotvec и кватернионы. Забыли про rotvec)
Так а всё таки практическая сторона так и не раскрыта.
Кватернионы, в отличии от матриц, умеют представлять только вращения, а не произвольные аффиные/проективные преобразования. А на практике же нужны почти всегда именно аффиные преобразования. И приходится хранить тройку (position, scale, rot) — а это уже 10 чисел. Лучше, чем 16 у mat4, но уже совсем не очевидно. Потому что умножение кватернионов более сложное и при наивной реализации требует больше вычислений, чем умножение на mat4.
И всё же кватернионы всё равно используют. Не потому что они эффективнее, а потому что с ними проще реализовывать многие операции... (и вот про это хотелось бы видеть в статье)
Во-вторых, при множественных преобразованиях постепенно накапливаются численные ошибки.
А в кватернионах не накапливаются? ;) Тоже накапливаются. Другое дело, что в кватернионах с ними бороться понятнее как...
В-третьих, при использовании углов Эйлера возникает известная проблема Gimbal Lock — потеря одной степени свободы вращения при определённых углах.
А какое отношение имеет Gimbal Lock, как и углы Эйлера к матрицам?
В процессе работы выяснилось, что большинство объяснений либо слишком академичны, либо сразу погружают читателя в алгебру Гамильтона. Поэтому попробуем разобраться в теме с практической точки зрения.
И сразу после этого погружаете читателя в алгебру Гамильтона. Всё же ожидал увидеть какое-нибудь практичное введение.
Например, а как всё же повертеть эту модельку. Или как бороться с накоплением погрешности.
Или например проблемы, которые возникают если реализовуют умножение кватернион на вектор. Например, что в ряде случаев -qv=qv != -(qv).
Хотелось бы видеть разбор кейсов, а как можно реализовать те, либо иные операции. Ну кроме банального "мы взяли кватернион и повернули точку".
А как всё же организовать представление смещений при использовании кватернионов. И этот список можно продолжать ещё очень долго.
Прошу прощения! Я забыл про автогенерируемый .gitignore при сборке Библиотечного Крейта через Rust, изменения запушил в репозиторий, знакомтесь!
Насчет статьи, я удивлен приятно, что кто-то ознакомился. Я не спал уже второй день занимаясь курсовыми и научной статьей. Надо было сделать публикацию научную (или околонаучную), выбрал Хабр, потому что очень приятного мнения об этой площадке.
По данной статьей - это небольшой утрированный пункт диплома, над которым я работаю. Я также возможно вас сильно порадую оптимизацией задач небесной механики, по применению уравнения Кеплера для эллиптических орбит. Это был мой первый опыт, рад что вы высказались!

Практическая сторона кватернионов для описания вращений