An n-dimensional linear algebra and mathematics library for computer graphics and other applications, designed to be roughly compatible with cgmath.
The library provides:
Vector2, Vector3, and Vector4Point2, Point3, and Point4ColumnVector<T, const N: usize>Matrix2, Matrix3, Matrix4 and Matrix<T, const N: usize, const M: usize>QuaternionOrthonormalal-jabr supports Vectors and Matrices of any size and will provide
implementations for any mathematic operations that are supported by their
scalars. Additionally, al-jabr can leverage Rust's type system to ensure that
operations are only applied to values that are the correct size. al-jabr can
do this while remaining no-std compatible.
For more information and a guide on getting started, check out the documentation.
mint feature (off by default) adds a dependency to the mint crate and provides support for converting between al-jabr types and mint types.serde feature (off by default) adds serialization/deserialization support from the serde crate.rand feature (off by default) allows you to create random points, vectors, and matrices by sampling from a random number source.Pull request of any nature are welcome.
Contact the author at maplant@protonmail.com or file an issue on github.
Rust
100.0%
An n-dimensional linear algebra and mathematics library for computer graphics and other applications, designed to be roughly compatible with cgmath.
The library provides:
Vector2, Vector3, and Vector4Point2, Point3, and Point4ColumnVector<T, const N: usize>Matrix2, Matrix3, Matrix4 and Matrix<T, const N: usize, const M: usize>QuaternionOrthonormalal-jabr supports Vectors and Matrices of any size and will provide
implementations for any mathematic operations that are supported by their
scalars. Additionally, al-jabr can leverage Rust's type system to ensure that
operations are only applied to values that are the correct size. al-jabr can
do this while remaining no-std compatible.
For more information and a guide on getting started, check out the documentation.
mint feature (off by default) adds a dependency to the mint crate and provides support for converting between al-jabr types and mint types.serde feature (off by default) adds serialization/deserialization support from the serde crate.rand feature (off by default) allows you to create random points, vectors, and matrices by sampling from a random number source.Pull request of any nature are welcome.
Contact the author at maplant@protonmail.com or file an issue on github.
Rust
100.0%