extern crate cgmath;
extern crate collision;
use cgmath::{PerspectiveFov, Point3, Rad};
use collision::{Projection, Relation, Sphere};
#[test]
fn test_contains() {
let frustum = PerspectiveFov {
fovy: Rad(1f32),
aspect: 1f32,
near: 1f32,
far: 10f32,
}.to_frustum();
assert_eq!(
frustum.contains(&Sphere {
center: Point3::new(0f32, 0f32, -5f32),
radius: 1f32,
}),
Relation::In
);
assert_eq!(
frustum.contains(&Sphere {
center: Point3::new(0f32, 3f32, -5f32),
radius: 1f32,
}),
Relation::Cross
);
assert_eq!(
frustum.contains(&Sphere {
center: Point3::new(0f32, 0f32, 5f32),
radius: 1f32,
}),
Relation::Out
);
}