Skip to content
This repository was archived by the owner on Dec 13, 2025. It is now read-only.

VRageMath.BoundingBoxD

Malware edited this page Dec 21, 2018 · 56 revisions

Index

BoundingBoxD Struct

Namespace: VRageMath
Assembly: VRage.Math.dll

Summary

Defines an axis-aligned box-shaped 3D volume.

Fields

Member Description
Vector3D Min The minimum point the BoundingBox contains.
Vector3D Max The maximum point the BoundingBox contains.
static ComparerType Comparer
static int CornerCount Specifies the total number of corners (8) in the BoundingBox.

Properties

Member Description
Vector3D Center Calculates center
Vector3D HalfExtents
Vector3D Extents
Vector3D Size Size
MatrixD Matrix Matrix of AABB, respection center and size
double SurfaceArea
double Volume
double Perimeter return perimeter of edges
bool Valid

Methods

Member Description
Vector3D[] GetCorners() Gets an array of points that make up the corners of the BoundingBox. ALLOCATION!
void GetCorners(Vector3D[] corners) Gets the array of points that make up the corners of the BoundingBox.
void GetCornersUnsafe(*Vector3D corners)
bool Equals(BoundingBoxD other) Determines whether two instances of BoundingBox are equal.
bool Equals(Object obj) Determines whether two instances of BoundingBox are equal.
int GetHashCode() Gets the hash code for this instance.
string ToString() Returns a String that represents the current BoundingBox.
static BoundingBoxD CreateMerged(BoundingBoxD original, BoundingBoxD additional) Creates the smallest BoundingBox that contains the two specified BoundingBox instances.
static void CreateMerged(ref BoundingBoxD original, ref BoundingBoxD additional, ref BoundingBoxD result) Creates the smallest BoundingBox that contains the two specified BoundingBox instances.
static BoundingBoxD CreateFromSphere(BoundingSphereD sphere) Creates the smallest BoundingBox that will contain the specified BoundingSphere.
static void CreateFromSphere(ref BoundingSphereD sphere, ref BoundingBoxD result) Creates the smallest BoundingBox that will contain the specified BoundingSphere.
static BoundingBoxD&nbsp;CreateFromPoints(IEnumerable<Vector3D>&nbsp;points) Creates the smallest BoundingBox that will contain a group of points.
BoundingBoxD&nbsp;Intersect(BoundingBoxD&nbsp;box) Returns bounding box which is intersection of this and box It's called 'Prunik' Result is invalid box when there's no intersection (Min > Max)
bool&nbsp;Intersects(BoundingBoxD&nbsp;box) Checks whether the current BoundingBox intersects another BoundingBox.
bool&nbsp;Intersects(ref&nbsp;BoundingBoxD&nbsp;box)
void&nbsp;Intersects(ref&nbsp;BoundingBoxD&nbsp;box,&nbsp;ref&nbsp;bool&nbsp;result) Checks whether the current BoundingBox intersects another BoundingBox.
void&nbsp;Intersects(ref&nbsp;BoundingBox&nbsp;box,&nbsp;ref&nbsp;bool&nbsp;result)
bool&nbsp;IntersectsTriangle(Vector3D&nbsp;v0,&nbsp;Vector3D&nbsp;v1,&nbsp;Vector3D&nbsp;v2)
bool&nbsp;IntersectsTriangle(ref&nbsp;Vector3D&nbsp;v0,&nbsp;ref&nbsp;Vector3D&nbsp;v1,&nbsp;ref&nbsp;Vector3D&nbsp;v2)
bool&nbsp;Intersects(BoundingFrustumD&nbsp;frustum) Checks whether the current BoundingBox intersects a BoundingFrustum.
PlaneIntersectionType&nbsp;Intersects(PlaneD&nbsp;plane) Checks whether the current BoundingBox intersects a Plane.
void&nbsp;Intersects(ref&nbsp;PlaneD&nbsp;plane,&nbsp;ref&nbsp;PlaneIntersectionType&nbsp;result) Checks whether the current BoundingBox intersects a Plane.
bool&nbsp;Intersects(ref&nbsp;LineD&nbsp;line)
bool&nbsp;Intersects(ref&nbsp;LineD&nbsp;line,&nbsp;ref&nbsp;double&nbsp;distance)
Nullable<double>&nbsp;Intersects(Ray&nbsp;ray)
Nullable<double>&nbsp;Intersects(RayD&nbsp;ray) Checks whether the current BoundingBox intersects a Ray.
void&nbsp;Intersects(ref&nbsp;RayD&nbsp;ray,&nbsp;ref&nbsp;Nullable<double>&nbsp;result) Checks whether the current BoundingBox intersects a Ray.
bool&nbsp;Intersect(ref&nbsp;LineD&nbsp;line,&nbsp;ref&nbsp;LineD&nbsp;intersectedLine)
bool&nbsp;Intersect(ref&nbsp;LineD&nbsp;line,&nbsp;ref&nbsp;double&nbsp;t1,&nbsp;ref&nbsp;double&nbsp;t2)
bool&nbsp;Intersect(ref&nbsp;RayD&nbsp;ray,&nbsp;ref&nbsp;double&nbsp;tmin,&nbsp;ref&nbsp;double&nbsp;tmax)
bool&nbsp;Intersects(BoundingSphereD&nbsp;sphere) Checks whether the current BoundingBox intersects a BoundingSphere.
void&nbsp;Intersects(ref&nbsp;BoundingSphereD&nbsp;sphere,&nbsp;ref&nbsp;bool&nbsp;result) Checks whether the current BoundingBox intersects a BoundingSphere.
bool&nbsp;Intersects(ref&nbsp;BoundingSphereD&nbsp;sphere)
double&nbsp;Distance(Vector3D&nbsp;point)
double&nbsp;DistanceSquared(Vector3D&nbsp;point)
double&nbsp;DistanceSquared(ref&nbsp;Vector3D&nbsp;point)
ContainmentType&nbsp;Contains(BoundingBoxD&nbsp;box) Tests whether the BoundingBox contains another BoundingBox.
void&nbsp;Contains(ref&nbsp;BoundingBoxD&nbsp;box,&nbsp;ref&nbsp;ContainmentType&nbsp;result) Tests whether the BoundingBox contains a BoundingBox.
ContainmentType&nbsp;Contains(BoundingFrustumD&nbsp;frustum) Tests whether the BoundingBox contains a BoundingFrustum.
ContainmentType&nbsp;Contains(Vector3D&nbsp;point) Tests whether the BoundingBox contains a point.
void&nbsp;Contains(ref&nbsp;Vector3D&nbsp;point,&nbsp;ref&nbsp;ContainmentType&nbsp;result) Tests whether the BoundingBox contains a point.
ContainmentType&nbsp;Contains(BoundingSphereD&nbsp;sphere) Tests whether the BoundingBox contains a BoundingSphere.
void&nbsp;Contains(ref&nbsp;BoundingSphereD&nbsp;sphere,&nbsp;ref&nbsp;ContainmentType&nbsp;result) Tests whether the BoundingBox contains a BoundingSphere.
BoundingBoxD&nbsp;Translate(MatrixD&nbsp;worldMatrix) Translate
BoundingBoxD&nbsp;Translate(Vector3D&nbsp;vctTranlsation) Translate
BoundingBoxD&nbsp;TransformSlow(MatrixD&nbsp;m) Transform this AABB by matrix.
BoundingBoxD&nbsp;TransformSlow(ref&nbsp;MatrixD&nbsp;worldMatrix) Transform this AABB by matrix.
BoundingBoxD&nbsp;TransformFast(MatrixD&nbsp;m) Transform this AABB by matrix. Matrix has to be only rotation and translation.
BoundingBoxD&nbsp;TransformFast(ref&nbsp;MatrixD&nbsp;m) Transform this AABB by matrix. Matrix has to be only rotation and translation.
void&nbsp;TransformFast(ref&nbsp;MatrixD&nbsp;m,&nbsp;ref&nbsp;BoundingBoxD&nbsp;bb) Transform this AABB by matrix. Matrix has to be only rotation and translation.
BoundingBoxD&nbsp;Include(ref&nbsp;Vector3D&nbsp;point) return expanded aabb (aabb include point)
BoundingBoxD&nbsp;Include(Vector3D&nbsp;point)
BoundingBoxD&nbsp;Include(Vector3D&nbsp;p0,&nbsp;Vector3D&nbsp;p1,&nbsp;Vector3D&nbsp;p2)
BoundingBoxD&nbsp;Include(ref&nbsp;Vector3D&nbsp;p0,&nbsp;ref&nbsp;Vector3D&nbsp;p1,&nbsp;ref&nbsp;Vector3D&nbsp;p2)
BoundingBoxD&nbsp;Include(ref&nbsp;BoundingBoxD&nbsp;box) return expanded aabb (aabb include aabb)
BoundingBoxD&nbsp;Include(BoundingBoxD&nbsp;box)
void&nbsp;Include(ref&nbsp;LineD&nbsp;line)
BoundingBoxD&nbsp;Include(BoundingSphereD&nbsp;sphere)
BoundingBoxD&nbsp;Include(ref&nbsp;BoundingSphereD&nbsp;sphere)
BoundingBoxD&nbsp;Include(ref&nbsp;BoundingFrustumD&nbsp;frustum)
static BoundingBoxD&nbsp;CreateInvalid()
double&nbsp;ProjectedArea(Vector3D&nbsp;viewDir)
BoundingBoxD&nbsp;Inflate(double&nbsp;size)
BoundingBoxD&nbsp;Inflate(Vector3&nbsp;size)
BoundingBoxD&nbsp;GetInflated(double&nbsp;size)
BoundingBoxD&nbsp;GetInflated(Vector3&nbsp;size)
void&nbsp;InflateToMinimum(Vector3D&nbsp;minimumSize)
void&nbsp;InflateToMinimum(double&nbsp;minimumSize)
void&nbsp;AssertIsValid()

Clone this wiki locally