[#2] Removing the examples and tests.
I am removing the examples and tests. A lot of this needs to be redone anyways, but they were getting in the way of testing the new changes. If these are needed later they can be pulled back from the repository.
This commit is contained in:
@ -1,13 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
use sigils::quaternion::{Quaternion};
|
|
||||||
|
|
||||||
|
|
||||||
pub fn main()
|
|
||||||
{
|
|
||||||
let quat: Quaternion<f64>;
|
|
||||||
|
|
||||||
quat = Quaternion::<f64>::default();
|
|
||||||
println!("Quaternion: {}", quat);
|
|
||||||
}
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
use sigils::{Constants, Degree, Radian, Trig};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
fn main()
|
|
||||||
{
|
|
||||||
let mut val: f64;
|
|
||||||
let mut degrees: Degree<f64>;
|
|
||||||
let mut radians: Radian<f64>;
|
|
||||||
|
|
||||||
val = Constants::QUARTER_PI;
|
|
||||||
val *= 6f64;
|
|
||||||
radians = Radian::new(val);
|
|
||||||
degrees = Trig::acos(Trig::cos(radians));
|
|
||||||
|
|
||||||
println!("{:?}", radians);
|
|
||||||
println!("{:?}", degrees);
|
|
||||||
println!("");
|
|
||||||
|
|
||||||
radians = Radian::new(Constants::QUARTER_PI);
|
|
||||||
radians = Trig::acos(Trig::cos(radians));
|
|
||||||
degrees = Degree::from(radians);
|
|
||||||
|
|
||||||
println!("{:?}", radians);
|
|
||||||
println!("{:?}", degrees);
|
|
||||||
println!("");
|
|
||||||
|
|
||||||
degrees = Degree::new(270.0f64);
|
|
||||||
radians = Trig::acos(Trig::cos(degrees));
|
|
||||||
|
|
||||||
println!("{:?}", degrees);
|
|
||||||
println!("{:?}", radians);
|
|
||||||
println!("");
|
|
||||||
|
|
||||||
degrees = Degree::new(90.0f64);
|
|
||||||
degrees = Trig::acos(Trig::cos(degrees));
|
|
||||||
radians = Radian::from(degrees);
|
|
||||||
|
|
||||||
println!("{:?}", degrees);
|
|
||||||
println!("{:?}", radians);
|
|
||||||
println!("");
|
|
||||||
}
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
use sigils::vector::{EuclideanVector, Vector2, Vector3, Vector4};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pub fn main()
|
|
||||||
{
|
|
||||||
let length: f32;
|
|
||||||
let vec2: Vector2<f64>;
|
|
||||||
let vec3: Vector3<f64>;
|
|
||||||
let vec4: Vector4<f64>;
|
|
||||||
let vector: Vector4<f32>;
|
|
||||||
|
|
||||||
vec2 = Vector2::default();
|
|
||||||
println!("Vector2: {}", vec2);
|
|
||||||
|
|
||||||
vec3 = Vector3::default();
|
|
||||||
println!("Vector3: {}", vec3);
|
|
||||||
|
|
||||||
vec4 = Vector4::default();
|
|
||||||
println!("Vector4: {}", vec4);
|
|
||||||
|
|
||||||
vector = Vector4::new(5.5f32, 5.5f32, 5.5f32, 5.5f32);
|
|
||||||
length = vector.get_length();
|
|
||||||
println!("Vector: {} -- Length: {}", vector, length);
|
|
||||||
assert_eq!(length, 11.0f32);
|
|
||||||
}
|
|
||||||
@ -1,98 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
use std::{f32, f64};
|
|
||||||
use sigils::Constants;
|
|
||||||
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn constant_check_f32()
|
|
||||||
{
|
|
||||||
let val: f32 = Constants::SQRT_2;
|
|
||||||
assert_eq!(val, f32::consts::SQRT_2);
|
|
||||||
let val: f32 = Constants::SQRT_3;
|
|
||||||
assert_eq!(val, 1.73205080756887729352f32);
|
|
||||||
let val: f32 = Constants::INVERSE_SQRT_2;
|
|
||||||
assert_eq!(val, 1.0f32 / f32::consts::SQRT_2);
|
|
||||||
let val: f32 = Constants::INVERSE_SQRT_3;
|
|
||||||
assert_eq!(val, 1.0f32 / 1.73205080756887729352f32);
|
|
||||||
|
|
||||||
let val: f32 = Constants::E;
|
|
||||||
assert_eq!(val, f32::consts::E);
|
|
||||||
|
|
||||||
let val: f32 = Constants::LOG2_E;
|
|
||||||
assert_eq!(val, f32::consts::LOG2_E);
|
|
||||||
let val: f32 = Constants::LOG10_E;
|
|
||||||
assert_eq!(val, f32::consts::LOG10_E);
|
|
||||||
let val: f32 = Constants::LOGE_2;
|
|
||||||
assert_eq!(val, 2f32.ln());
|
|
||||||
let val: f32 = Constants::LOGE_10;
|
|
||||||
assert_eq!(val, 10f32.ln());
|
|
||||||
|
|
||||||
let val: f32 = Constants::TWO_PI;
|
|
||||||
assert_eq!(val, 2f32 * f32::consts::PI);
|
|
||||||
let val: f32 = Constants::PI;
|
|
||||||
assert_eq!(val, f32::consts::PI);
|
|
||||||
let val: f32 = Constants::HALF_PI;
|
|
||||||
assert_eq!(val, f32::consts::PI / 2f32);
|
|
||||||
let val: f32 = Constants::THIRD_PI;
|
|
||||||
assert_eq!(val, f32::consts::PI / 3f32);
|
|
||||||
let val: f32 = Constants::QUARTER_PI;
|
|
||||||
assert_eq!(val, f32::consts::PI / 4f32);
|
|
||||||
let val: f32 = Constants::SIXTH_PI;
|
|
||||||
assert_eq!(val, f32::consts::PI / 6f32);
|
|
||||||
let val: f32 = Constants::EIGHTH_PI;
|
|
||||||
assert_eq!(val, f32::consts::PI / 8f32);
|
|
||||||
let val: f32 = Constants::INVERSE_PI;
|
|
||||||
assert_eq!(val, 1.0f32 / f32::consts::PI);
|
|
||||||
let val: f32 = Constants::TWO_INVERSE_PI;
|
|
||||||
assert_eq!(val, 2.0f32 / f32::consts::PI);
|
|
||||||
let val: f32 = Constants::TWO_INVERSE_SQRT_PI;
|
|
||||||
assert_eq!(val, 2.0f32 / (f32::consts::PI).sqrt());
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn constant_check_f64()
|
|
||||||
{
|
|
||||||
let val: f64 = Constants::SQRT_2;
|
|
||||||
assert_eq!(val, f64::consts::SQRT_2);
|
|
||||||
let val: f64 = Constants::SQRT_3;
|
|
||||||
assert_eq!(val, 1.73205080756887729352f64);
|
|
||||||
let val: f64 = Constants::INVERSE_SQRT_2;
|
|
||||||
assert_eq!(val, 1.0f64 / f64::consts::SQRT_2);
|
|
||||||
let val: f64 = Constants::INVERSE_SQRT_3;
|
|
||||||
assert_eq!(val, 1.0f64 / 1.73205080756887729352f64);
|
|
||||||
|
|
||||||
let val: f64 = Constants::E;
|
|
||||||
assert_eq!(val, f64::consts::E);
|
|
||||||
|
|
||||||
let val: f64 = Constants::LOG2_E;
|
|
||||||
assert_eq!(val, f64::consts::LOG2_E);
|
|
||||||
let val: f64 = Constants::LOG10_E;
|
|
||||||
assert_eq!(val, f64::consts::LOG10_E);
|
|
||||||
let val: f64 = Constants::LOGE_2;
|
|
||||||
assert_eq!(val, 2f64.ln());
|
|
||||||
let val: f64 = Constants::LOGE_10;
|
|
||||||
assert_eq!(val, 10f64.ln());
|
|
||||||
|
|
||||||
let val: f64 = Constants::TWO_PI;
|
|
||||||
assert_eq!(val, 2f64 * f64::consts::PI);
|
|
||||||
let val: f64 = Constants::PI;
|
|
||||||
assert_eq!(val, f64::consts::PI);
|
|
||||||
let val: f64 = Constants::HALF_PI;
|
|
||||||
assert_eq!(val, f64::consts::PI / 2f64);
|
|
||||||
let val: f64 = Constants::THIRD_PI;
|
|
||||||
assert_eq!(val, f64::consts::PI / 3f64);
|
|
||||||
let val: f64 = Constants::QUARTER_PI;
|
|
||||||
assert_eq!(val, f64::consts::PI / 4f64);
|
|
||||||
let val: f64 = Constants::SIXTH_PI;
|
|
||||||
assert_eq!(val, f64::consts::PI / 6f64);
|
|
||||||
let val: f64 = Constants::EIGHTH_PI;
|
|
||||||
assert_eq!(val, f64::consts::PI / 8f64);
|
|
||||||
let val: f64 = Constants::INVERSE_PI;
|
|
||||||
assert_eq!(val, 1.0f64 / f64::consts::PI);
|
|
||||||
let val: f64 = Constants::TWO_INVERSE_PI;
|
|
||||||
assert_eq!(val, 2.0f64 / f64::consts::PI);
|
|
||||||
let val: f64 = Constants::TWO_INVERSE_SQRT_PI;
|
|
||||||
assert_eq!(val, 2.0f64 / (f64::consts::PI).sqrt());
|
|
||||||
}
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
mod constants;
|
|
||||||
mod vector;
|
|
||||||
615
tests/vector.rs
615
tests/vector.rs
@ -1,615 +0,0 @@
|
|||||||
// SPDX-License-Identifier: Apache-2.0
|
|
||||||
// Sealed with Magistamp.
|
|
||||||
|
|
||||||
use std::ops::{Add, Sub, Mul, Div, Rem};
|
|
||||||
use std::ops::{AddAssign, SubAssign, MulAssign, DivAssign, RemAssign};
|
|
||||||
use sigils::vector::*;
|
|
||||||
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_creation()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(1.0f32);
|
|
||||||
|
|
||||||
assert_eq!(v.x, 1.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_add()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(1.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(4.0f32);
|
|
||||||
let scalar: f32 = 4.0f32;
|
|
||||||
|
|
||||||
let v_three = v.add(&v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v.add(v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v + &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v + v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v + &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v + v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v + 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v + 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v + scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v + scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v + &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v + &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_sub()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(9.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(4.0f32);
|
|
||||||
let scalar: f32 = 4.0f32;
|
|
||||||
|
|
||||||
let v_three = v.sub(&v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v.sub(v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v - &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v - v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v - &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v - v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v - 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v - 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v - scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v - scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = &v - &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let v_three = v - &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_mul()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(3.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(5.0f32);
|
|
||||||
let scalar: f32 = 5.0f32;
|
|
||||||
|
|
||||||
let v_three = v.mul(&v_two);
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v.mul(v_two);
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v * &v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v * v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = &v * &v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = &v * v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = &v * 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v * 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = &v * scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v * scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = &v * &scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let v_three = v * &scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_div()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(15.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(5.0f32);
|
|
||||||
let scalar: f32 = 5.0f32;
|
|
||||||
|
|
||||||
let v_three = v.div(&v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v.div(v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v / &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v / v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v / &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v / v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v / 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v / 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v / scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v / scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v / &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v / &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_rem()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(15.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(6.0f32);
|
|
||||||
let scalar: f32 = 6.0f32;
|
|
||||||
|
|
||||||
let v_three = v.rem(&v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v.rem(v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v % &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v % v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v % &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v % v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v % 6.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v % 6.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v % scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v % scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = &v % &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let v_three = v % &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_add_assign()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(1.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(4.0f32);
|
|
||||||
let scalar: f32 = 4.0f32;
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.add_assign(&v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.add_assign(v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three += &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three += v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three += 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three += scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three += &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_sub_assign()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(9.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(4.0f32);
|
|
||||||
let scalar: f32 = 4.0f32;
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.sub_assign(&v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.sub_assign(v_two);
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three -= &v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three -= v_two;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three -= 4.0f32;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three -= scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three -= &scalar;
|
|
||||||
assert_eq!(v_three.x, 5.0f32);
|
|
||||||
assert_eq!(v_three.y, 5.0f32);
|
|
||||||
assert_eq!(v_three.z, 5.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_mul_assign()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(3.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(5.0f32);
|
|
||||||
let scalar: f32 = 5.0f32;
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.mul_assign(&v_two);
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.mul_assign(v_two);
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three *= &v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three *= v_two;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three *= 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three*= scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three *= &scalar;
|
|
||||||
assert_eq!(v_three.x, 15.0f32);
|
|
||||||
assert_eq!(v_three.y, 15.0f32);
|
|
||||||
assert_eq!(v_three.z, 15.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_div_assign()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(15.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(5.0f32);
|
|
||||||
let scalar: f32 = 5.0f32;
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.div_assign(&v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.div_assign(v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three /= &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three /= v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three /= 5.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three /= scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three /= &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn vector_rem_assign()
|
|
||||||
{
|
|
||||||
let v: Vector3<f32> = Vector3::<f32>::from_value(15.0f32);
|
|
||||||
|
|
||||||
let v_two: Vector3<f32> = Vector3::<f32>::from_value(6.0f32);
|
|
||||||
let scalar: f32 = 6.0f32;
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.rem_assign(&v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three.rem_assign(v_two);
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three %= &v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three %= v_two;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three %= 6.0f32;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three %= scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
|
|
||||||
let mut v_three = v.clone();
|
|
||||||
v_three %= &scalar;
|
|
||||||
assert_eq!(v_three.x, 3.0f32);
|
|
||||||
assert_eq!(v_three.y, 3.0f32);
|
|
||||||
assert_eq!(v_three.z, 3.0f32);
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user