[−][src]Struct collision::Aabb2
A two-dimensional AABB, aka a rectangle.
Fields
min: Point2<S>
Minimum point of the AABB
max: Point2<S>
Maximum point of the AABB
Methods
impl<S: BaseNum> Aabb2<S>
[src]
impl<S: BaseNum> Aabb2<S>
pub fn new(p1: Point2<S>, p2: Point2<S>) -> Aabb2<S> | [src] |
Construct a new axis-aligned bounding box from two points.
pub fn to_corners(&self) -> [Point2<S>; 4] | [src] |
Compute corners.
Trait Implementations
impl<S: BaseFloat> Continuous<Aabb2<S>> for Ray2<S>
[src]
impl<S: BaseFloat> Continuous<Aabb2<S>> for Ray2<S>
type Result = Point2<S>
Result returned by the intersection test
fn intersection(&self, aabb: &Aabb2<S>) -> Option<Point2<S>> | [src] |
impl<S: BaseFloat> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Aabb2<S>
[src]
impl<S: BaseFloat> Continuous<Ray<S, Point2<S>, Vector2<S>>> for Aabb2<S>
type Result = Point2<S>
Result returned by the intersection test
fn intersection(&self, ray: &Ray2<S>) -> Option<Point2<S>> | [src] |
impl<S: BaseFloat> Discrete<Aabb2<S>> for Ray2<S>
[src]
impl<S: BaseFloat> Discrete<Aabb2<S>> for Ray2<S>
fn intersects(&self, aabb: &Aabb2<S>) -> bool | [src] |
impl<S: BaseFloat> Discrete<Ray<S, Point2<S>, Vector2<S>>> for Aabb2<S>
[src]
impl<S: BaseFloat> Discrete<Ray<S, Point2<S>, Vector2<S>>> for Aabb2<S>
fn intersects(&self, ray: &Ray2<S>) -> bool | [src] |
impl<S: BaseFloat> Discrete<Aabb2<S>> for Aabb2<S>
[src]
impl<S: BaseFloat> Discrete<Aabb2<S>> for Aabb2<S>
fn intersects(&self, aabb: &Aabb2<S>) -> bool | [src] |
impl<S: BaseNum> Contains<Point2<S>> for Aabb2<S>
[src]
impl<S: BaseNum> Contains<Point2<S>> for Aabb2<S>
impl<S: BaseNum> Contains<Aabb2<S>> for Aabb2<S>
[src]
impl<S: BaseNum> Contains<Aabb2<S>> for Aabb2<S>
impl<S: BaseNum> Contains<Line<S, Vector2<S>, Point2<S>>> for Aabb2<S>
[src]
impl<S: BaseNum> Contains<Line<S, Vector2<S>, Point2<S>>> for Aabb2<S>
impl<S: BaseNum> SurfaceArea for Aabb2<S>
[src]
impl<S: BaseNum> SurfaceArea for Aabb2<S>
impl<S: BaseNum> Union<Aabb2<S>> for Aabb2<S>
[src]
impl<S: BaseNum> Union<Aabb2<S>> for Aabb2<S>
impl<S> ComputeBound<Aabb2<S>> for Circle<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for Circle<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S> ComputeBound<Aabb2<S>> for Line2<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for Line2<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S> ComputeBound<Aabb2<S>> for ConvexPolygon<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for ConvexPolygon<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S> ComputeBound<Aabb2<S>> for Primitive2<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for Primitive2<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S> ComputeBound<Aabb2<S>> for Rectangle<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for Rectangle<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S> ComputeBound<Aabb2<S>> for Square<S> where
S: BaseFloat,
[src]
impl<S> ComputeBound<Aabb2<S>> for Square<S> where
S: BaseFloat,
fn compute_bound(&self) -> Aabb2<S> | [src] |
impl<S: BaseNum> Aabb for Aabb2<S>
[src]
impl<S: BaseNum> Aabb for Aabb2<S>
type Scalar = S
Scalar type
type Diff = Vector2<S>
Vector type
type Point = Point2<S>
Point type
fn new(p1: Point2<S>, p2: Point2<S>) -> Aabb2<S> | [src] |
fn min(&self) -> Point2<S> | [src] |
fn max(&self) -> Point2<S> | [src] |
fn add_margin(&self, margin: Self::Diff) -> Self | [src] |
fn transform<T>(&self, transform: &T) -> Self where | [src] |
fn zero() -> Self | [src] |
Create a new empty AABB
fn dim(&self) -> Self::Diff | [src] |
Return the dimensions of this AABB.
fn volume(&self) -> Self::Scalar | [src] |
Return the volume this AABB encloses.
fn center(&self) -> Self::Point | [src] |
Return the center point of this AABB.
fn grow(&self, p: Self::Point) -> Self | [src] |
Returns a new AABB that is grown to include the given point.
fn add_v(&self, v: Self::Diff) -> Self | [src] |
Add a vector to every point in the AABB, returning a new AABB.
fn mul_s(&self, s: Self::Scalar) -> Self | [src] |
Multiply every point in the AABB by a scalar, returning a new AABB.
fn mul_v(&self, v: Self::Diff) -> Self | [src] |
Multiply every point in the AABB by a vector, returning a new AABB.
impl<S: Copy> Copy for Aabb2<S>
[src]
impl<S: Copy> Copy for Aabb2<S>
impl<S: PartialEq> PartialEq<Aabb2<S>> for Aabb2<S>
[src]
impl<S: PartialEq> PartialEq<Aabb2<S>> for Aabb2<S>
impl<S: Clone> Clone for Aabb2<S>
[src]
impl<S: Clone> Clone for Aabb2<S>
fn clone(&self) -> Aabb2<S> | [src] |
fn clone_from(&mut self, source: &Self) | 1.0.0 [src] |
Performs copy-assignment from source
. Read more
impl<S: BaseNum> Debug for Aabb2<S>
[src]
impl<S: BaseNum> Debug for Aabb2<S>
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> | [src] |
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T | [src] |
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error> | [src] |
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId | [src] |