Preon::Math is a simple C++ math library that is used for all the basic math operations in PreonLab. It includes vector, matrix, euler angles and quaternion classes and basic linear algebra operations. It also includes SIMD variants for the most common operations.
Preon::Math is tested to compile with Visual Studio 2015 and GCC 7.
- Added
SymmetricMatrix33
. - Added
.clang-format
file and formatted all files with it.
- Renamed
vec::zeroVector()
tovec::zero()
- Improved
double
-precision support (new cast methods inPreon::Math::cast
, new templated operators).
- Port remaining unit tests from QTest to catch2.
- Doxygen documentation.
- CI builds.
- Extend unit tests to cover all classes and methods.
- Rename
vec::zeroVector()
tovec::zero()
to match thematrix::zero()
method. - Add a
all.h
(or similar name) that includes all math classes/defines. Similar,all_fwd.h
would be nice. - Combine
math_misc.h
andmath_utils.h
. - Compare
MatrixUtil::fromQuaternion
toRotationUtils::matrixFromQuaternions
and decide on one variant. Delete the other. - Remove
ErrorHandling.h
dependencies and exception throwing.
Preon::Math is licensed under MPL2, see LICENSE
.
This means you can use Preon::Math in your application (even commercially) but you must include the license notice and at least provide a link to the source code. Furthermore, if you make adaptions to Preon::Math you have to share them under the same license.
This repo also contains the catch2 unit test library which is licensed under the Boost Software License.