Shigens
The shigens is a math library for calculate quaternion.
When there was such a variable
x = 1 + 2i + 3j + 4k
in shigens can write like this.
use shigens::*;
let x = quaternion(1, 2, 3, 4);
// or
let x = r(1) + i(2) + j(3) + k(4);
Examples
So far, I have implemented only basic operations.
use *;
assert_eq!;
assert_eq!;
assert_eq!;
use *;
let x1 = quaternion;
let x2 = quaternion;
let y = x1 + x2;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
use *;
let x1 = quaternion;
let x2 = quaternion;
let y = x1 * x2;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
use *;
let x = quaternion;
let y = x * i;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;