#![no_std]
pub mod ops;
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct ForceVec6 {
data: [f64; 6],
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct MotionVec6 {
data: [f64; 6],
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct TransformationMatrix {
data: [f64; 36],
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct RotationMatrix {
data: [f64; 9],
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct TranslationVector {
data: [f64; 3],
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn dot() {
let force = ForceVec6::from_array([1.0, 2.0, 3.0, 4.0, 5.0, 6.0]);
let motion = MotionVec6::from_array([1.0, 2.0, 3.0, 4.0, 5.0, 6.0]);
assert_eq!(force.dot(motion), 91.0);
}
}