[−][src]Struct directx_math::collision::BoundingBox
A bounding axis-aligned object (AABB
).
https://docs.microsoft.com/en-us/windows/win32/api/directxcollision/ns-directxcollision-boundingbox
Fields
Center: XMFLOAT3
Extents: XMFLOAT3
Implementations
impl BoundingBox
[src]
pub const CORNER_COUNT: usize
[src]
pub fn GetCorners(&self, Corners: &mut [XMFLOAT3; 8])
[src]
pub fn TransformMatrix(&self, Out: &mut Self, M: FXMMATRIX)
[src]
Transforms the BoundingBox by the specified transformation matrix..
Parameters
Out
The transformed BoundingBox.
M
The matrix to transform the BoundingBox by.
Return value
None
Reference
pub fn TransformDecomposed(
&self,
Out: &mut Self,
Scale: f32,
Rotation: FXMVECTOR,
Translation: FXMVECTOR
)
[src]
&self,
Out: &mut Self,
Scale: f32,
Rotation: FXMVECTOR,
Translation: FXMVECTOR
)
Transforms the BoundingBox using the specified scale
, rotation
and translation
vectors.
Parameters
Out
The transformed BoundingBox.
Scale
The value to scale the BoundingBox by.
Rotation
The value to rotate the BoundingBox by.
Translation
The value to translate the BoundingBox by.
Return value
This method does not return a value.
Reference
pub fn ContainsPoint(&self, Point: FXMVECTOR) -> ContainmentType
[src]
Tests the whether the BoundingBox contains a specified point.
Parameters
Point
The point to test against.
Return value
A ContainmentType value indicating whether the point is contained in the BoundingBox.
Reference
pub fn ContainsTriangle(
&self,
V0: FXMVECTOR,
V1: FXMVECTOR,
V2: FXMVECTOR
) -> ContainmentType
[src]
&self,
V0: FXMVECTOR,
V1: FXMVECTOR,
V2: FXMVECTOR
) -> ContainmentType
Test whether the BoundingBox contains a specified triangle.
Parameters
V0
A corner of the triangle.
V1
A corner of the triangle.
V2
A corner of the triangle.
Return value
A ContainmentType value indicating whether the BoundingBox contains the specified triangle.
Reference
pub fn ContainsSphere(&self, sh: &BoundingSphere) -> ContainmentType
[src]
Tests whether the BoundingBox contains a specified BoundingSphere.
pub fn ContainsBox(&self, box_: &BoundingBox) -> ContainmentType
[src]
Tests whether the BoundingBox contains a specified BoundingBox.
pub fn ContainsOrientedBox(&self, box_: &BoundingOrientedBox) -> ContainmentType
[src]
Tests whether the BoundingBox contains the specified BoundingOrientedBox.
pub fn ContainsFrustum(&self, fr: &BoundingFrustum) -> ContainmentType
[src]
Tests whether the BoundingBox contains the specified BoundingFrustum.
pub fn IntersectsSphere(&self, sh: &BoundingSphere) -> bool
[src]
Tests the BoundingBox for intersection with a BoundingSphere.
pub fn IntersectsBox(&self, box_: &BoundingBox) -> bool
[src]
Tests the BoundingBox for intersection with a BoundingBox.
pub fn IntersectsOrientedBox(&self, box_: &BoundingOrientedBox) -> bool
[src]
Test the BoundingBox for intersection with a BoundingOrientedBox.
pub fn IntersectsFrustum(&self, fr: &BoundingFrustum) -> bool
[src]
Test the BoundingBox for intersection with a BoundingFrustum.
pub fn IntersectsTriangle(
&self,
V0: FXMVECTOR,
V1: FXMVECTOR,
V2: FXMVECTOR
) -> bool
[src]
&self,
V0: FXMVECTOR,
V1: FXMVECTOR,
V2: FXMVECTOR
) -> bool
Tests the BoundingSphere for intersection with a triangle.
Parameters
V0
A vector describing the triangle.
V1
A vector describing the triangle.
V2
A vector describing the triangle.
Return value
A bool value indicating whether the BoundingBox intersects the triangle.
Reference
pub fn IntersectsPlane(&self, Plane: FXMVECTOR) -> PlaneIntersectionType
[src]
Tests the BoundingBox for intersection with a Plane.
Parameters
Plane
A vector describing the plane coefficients (A
, B
, C
, D
) for the plane equation Ax+By+Cz+D=0
.
Return value
A PlaneIntersectionType value indicating whether the BoundingSphere intersects the specified plane.
Reference
pub fn IntersectsRay(
&self,
Origin: FXMVECTOR,
Direction: FXMVECTOR,
Dist: &mut f32
) -> bool
[src]
&self,
Origin: FXMVECTOR,
Direction: FXMVECTOR,
Dist: &mut f32
) -> bool
Tests the BoundingBox for intersection with a ray.
Parameters
Origin
The origin of the ray.
Direction
The direction of the ray.
Dist
The length of the ray.
Return value
A bool value indicating whether the BoundingBox intersects the ray.
Remarks
The distance from the Origin
to the nearest intersection point is returned
in Dist
when the method returns true
. Otherwise, Dist
is set to 0.0
.
Reference
pub fn ContainedBy(
&self,
Plane0: FXMVECTOR,
Plane1: FXMVECTOR,
Plane2: GXMVECTOR,
Plane3: HXMVECTOR,
Plane4: HXMVECTOR,
Plane5: HXMVECTOR
) -> ContainmentType
[src]
&self,
Plane0: FXMVECTOR,
Plane1: FXMVECTOR,
Plane2: GXMVECTOR,
Plane3: HXMVECTOR,
Plane4: HXMVECTOR,
Plane5: HXMVECTOR
) -> ContainmentType
Tests whether the BoundingBox is contained by the specified frustum.
pub fn CreateMerged(Out: &mut Self, b1: &Self, b2: &Self)
[src]
Creates a BoundingBox that contains the two specified BoundingBox objects.
pub fn CreateFromSphere(Out: &mut Self, sh: &BoundingSphere)
[src]
Creates a BoundingBox large enough to contain the a specified BoundingSphere.
pub fn CreateFromPoints<'a>(
Out: &mut Self,
pPoints: impl Iterator<Item = &'a XMFLOAT3>
)
[src]
Out: &mut Self,
pPoints: impl Iterator<Item = &'a XMFLOAT3>
)
Creates a new BoundingBox from a list of points.
Trait Implementations
impl Clone for BoundingBox
[src]
fn clone(&self) -> BoundingBox
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for BoundingBox
[src]
impl Debug for BoundingBox
[src]
Auto Trait Implementations
impl RefUnwindSafe for BoundingBox
impl Send for BoundingBox
impl Sync for BoundingBox
impl Unpin for BoundingBox
impl UnwindSafe for BoundingBox
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
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, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,