Simple 2D Vector
Simple grid-based 2-dimensional vectors in Rust
Getting Started
To get started with simple_2d_vector, add it to your project using cargo add simple_2d_vector.
You can then use it by using the provided Vector2D struct.
Examples
Creating a Vector2D with Vector2D::new() and comparing it to a Vector2D::null()
use vector2d::Vector2D;
fn main() {
let vector = Vector2D::new(
(0.0, 0.0), (0.0, 0.0) );
let null_vector = Vector2D::null((0.0, 0.0));
assert_eq!(vector, null_vector); }
Performing addition and subtraction with vectors
use vector2d::Vector2D;
fn main() {
let vector1 = Vector2D::new(
(10.0, 10.0),
(10.0, 5.0)
);
let vector2 = Vector2D::new(
(10.0, 10.0),
(5.0, 10.0)
);
let result_vector_addition = Vector2D::new(
(10.0, 10.0),
(15.0, 15.0)
);
let result_vector_subtraction = Vector2D::new(
(10.0, 10.0),
(5.0, -5.0)
);
assert_eq!(vector1 + vector2, result_vector_addition);
assert_eq!(vector1 - vector2, result_vector_subtraction);
}
Shifting a vector
use vector2d::Vector2D;
fn main() {
let vector = Vector2D::new(
(10.0, 10.0),
(10.0, 5.0)
);
let result_vector = Vector2D::new(
(8.0, 11.25),
(10.0, 5.0)
);
assert_eq!(vector.shift(shift), result_vector);
}