14 Commits

Author SHA1 Message Date
Oleg Kalachev
6b7601c0bd Improve vector and quaternion libraries
Make the order or basic methods consistent between Vector and Quaternion.
Remove `ZYX` from Euler method names as this is standard for robotics.
Rename angular rates to rotation vector, which is more correct.
Make rotation methods static, to keep the arguments order consistent.
Make `Quaternion::fromAxisAngle` accept Vector for axis.
Minor fixes.
2025-05-31 04:17:00 +03:00
Oleg Kalachev
c14fe7c48b Add some missing operator for vector library 2025-04-29 23:21:12 +03:00
Oleg Kalachev
732de2a5d6 Remove redundant inline specifiers
In-class defined methods are specified as inline by default
2025-01-04 04:09:51 +03:00
Oleg Kalachev
be3d2be9d3 Fix Vector::angularRatesBetweenVectors return NaNs on opposite vectors 2024-05-21 10:50:47 +03:00
Oleg Kalachev
24e8569905 Make Vector methods arguments more consistent 2024-04-20 10:57:32 +03:00
Oleg Kalachev
2cf1c7abb3 Use FlixPeriph library for IMU, implement own IMU calibration 2024-03-15 10:38:48 +03:00
Oleg Kalachev
410fccf015 Fix vector, quaternion, pid and lpf libraries curly braces code style 2024-02-06 13:50:56 +03:00
Oleg Kalachev
d2296fea76 Change C++ code style: put curly brace on the same line 2023-12-29 18:56:25 +03:00
Oleg Kalachev
d3e7291197 Guard for angleBetweenVectors function to ensure it doesn't return NaN 2023-12-19 04:58:20 +03:00
Oleg Kalachev
997af183f0 Implement lacking vector division operator 2023-12-13 08:38:26 +03:00
Oleg Kalachev
4fcf2109ce Simplify code using angularRatesBetweenVectors 2023-12-13 08:25:11 +03:00
Oleg Kalachev
70eae3e556 Some cleanups 2023-11-11 06:15:20 +03:00
Oleg Kalachev
d6cca7dcf7 Some unification of the headers 2023-05-24 11:26:30 +03:00
Oleg Kalachev
34fd303027 Restore accidentally removed files 2023-05-24 10:58:34 +03:00