Class BoundingBox
Represents an axis-aligned bounding box in three dimensional space.
Inheritance
Implements
Namespace: FlaxEngine
Assembly: FlaxEngine.CSharp.dll
Syntax
[Unmanaged]
public sealed class BoundingBox : ValueType, IEquatable<BoundingBox>, IFormattableConstructors
BoundingBox(Vector3, Vector3)
Initializes a new instance of the BoundingBox struct.
Declaration
public BoundingBox(Vector3 minimum, Vector3 maximum)Parameters
| Vector3
        minimum The minimum vertex of the bounding box. | 
| Vector3
        maximum The maximum vertex of the bounding box. | 
Fields
Empty
A BoundingBox which represents an empty space.
Declaration
public static readonly BoundingBox EmptyField Value
| BoundingBox 
 | 
Maximum
Minimum
Zero
A BoundingBox which is located in point (0, 0, 0) and has size equal (0, 0, 0).
Declaration
public static readonly BoundingBox ZeroField Value
| BoundingBox 
 | 
Properties
Center
Gets or sets the center point location.
Declaration
[NoSerialize]
public Vector3 Center { get; set; }Property Value
| Vector3 
 | 
Default
The default BoundingBox.
Declaration
public static BoundingBox Default { get; }Property Value
| BoundingBox 
 | 
Size
Gets or sets the size.
Declaration
[NoSerialize]
public Vector3 Size { get; set; }Property Value
| Vector3 
 | 
Methods
Contains(BoundingBox)
Determines whether the current objects contains a BoundingBox.
Declaration
public ContainmentType Contains(BoundingBox box)Parameters
| BoundingBox
        box The box to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Contains(ref BoundingBox)
Determines whether the current objects contains a BoundingBox.
Declaration
public ContainmentType Contains(ref BoundingBox box)Parameters
| BoundingBox
        box The box to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Contains(BoundingSphere)
Determines whether the current objects contains a BoundingSphere.
Declaration
public ContainmentType Contains(BoundingSphere sphere)Parameters
| BoundingSphere
        sphere The sphere to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Contains(ref BoundingSphere)
Determines whether the current objects contains a BoundingSphere.
Declaration
public ContainmentType Contains(ref BoundingSphere sphere)Parameters
| BoundingSphere
        sphere The sphere to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Contains(Vector3)
Determines whether the current objects contains a point.
Declaration
public ContainmentType Contains(Vector3 point)Parameters
| Vector3
        point The point to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Contains(ref Vector3)
Determines whether the current objects contains a point.
Declaration
public ContainmentType Contains(ref Vector3 point)Parameters
| Vector3
        point The point to test. | 
Returns
| ContainmentType The type of containment the two objects have. | 
Equals(BoundingBox)
Determines whether the specified Vector4 is equal to this instance.
Declaration
public bool Equals(BoundingBox other)Parameters
| BoundingBox
        other The Vector4 to compare with this instance. | 
Returns
| System.Boolean 
 | 
Equals(ref BoundingBox)
Determines whether the specified Vector4 is equal to this instance.
Declaration
public bool Equals(ref BoundingBox other)Parameters
| BoundingBox
        other The Vector4 to compare with this instance. | 
Returns
| System.Boolean 
 | 
Equals(Object)
Determines whether the specified System.Object is equal to this instance.
Declaration
public override bool Equals(object value)Parameters
| System.Object
        value The System.Object to compare with this instance. | 
Returns
| System.Boolean 
 | 
FromPoints(Vector3[])
Constructs a BoundingBox that fully contains the given points.
Declaration
public static BoundingBox FromPoints(Vector3[] points)Parameters
| Vector3[]
        points The points that will be contained by the box. | 
Returns
| BoundingBox The newly constructed bounding box. | 
Exceptions
| System.ArgumentNullException Thrown when  | 
FromPoints(Vector3[], out BoundingBox)
Constructs a BoundingBox that fully contains the given points.
Declaration
public static void FromPoints(Vector3[] points, out BoundingBox result)Parameters
| Vector3[]
        points The points that will be contained by the box. | 
| BoundingBox
        result When the method completes, contains the newly constructed bounding box. | 
Exceptions
| System.ArgumentNullException Thrown when  | 
FromPoints(Span<Float3>, out BoundingBox)
Constructs a BoundingBox that fully contains the given points.
Declaration
public static void FromPoints(Span<Float3> points, out BoundingBox result)Parameters
| System.Span<Float3>
        points The points that will be contained by the box. | 
| BoundingBox
        result When the method completes, contains the newly constructed bounding box. | 
Exceptions
| System.ArgumentNullException Thrown when  | 
FromSphere(BoundingSphere)
Constructs a BoundingBox from a given sphere.
Declaration
public static BoundingBox FromSphere(BoundingSphere sphere)Parameters
| BoundingSphere
        sphere The sphere that will designate the extents of the box. | 
Returns
| BoundingBox The newly constructed bounding box. | 
FromSphere(ref BoundingSphere, out BoundingBox)
Constructs a BoundingBox from a given sphere.
Declaration
public static void FromSphere(ref BoundingSphere sphere, out BoundingBox result)Parameters
| BoundingSphere
        sphere The sphere that will designate the extents of the box. | 
| BoundingBox
        result When the method completes, contains the newly constructed bounding box. | 
GetCorners()
Retrieves the eight corners of the bounding box.
Declaration
public Vector3[] GetCorners()Returns
| Vector3[] An array of points representing the eight corners of the bounding box. | 
GetCorners(Vector3[])
Retrieves the eight corners of the bounding box.
Declaration
public void GetCorners(Vector3[] corners)Parameters
| Vector3[]
        corners 
 | 
GetHashCode()
Returns a hash code for this instance.
Declaration
public override int GetHashCode()Returns
| System.Int32 A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. | 
Intersects(BoundingBox)
Determines if there is an intersection between the current object and a BoundingBox.
Declaration
public bool Intersects(BoundingBox box)Parameters
| BoundingBox
        box The box to test. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(ref BoundingBox)
Determines if there is an intersection between the current object and a BoundingBox.
Declaration
public bool Intersects(ref BoundingBox box)Parameters
| BoundingBox
        box The box to test. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(BoundingSphere)
Determines if there is an intersection between the current object and a BoundingSphere.
Declaration
public bool Intersects(BoundingSphere sphere)Parameters
| BoundingSphere
        sphere The sphere to test. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(ref BoundingSphere)
Determines if there is an intersection between the current object and a BoundingSphere.
Declaration
public bool Intersects(ref BoundingSphere sphere)Parameters
| BoundingSphere
        sphere The sphere to test. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(ref Plane)
Determines if there is an intersection between the current object and a Plane.
Declaration
public PlaneIntersectionType Intersects(ref Plane plane)Parameters
| Plane
        plane The plane to test. | 
Returns
| PlaneIntersectionType Whether the two objects intersected. | 
Intersects(ref Ray)
Determines if there is an intersection between the current object and a Ray.
Declaration
public bool Intersects(ref Ray ray)Parameters
| Ray
        ray The ray to test. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(ref Ray, out Vector3)
Determines if there is an intersection between the current object and a Ray.
Declaration
public bool Intersects(ref Ray ray, out Vector3 point)Parameters
| Ray
        ray The ray to test. | 
| Vector3
        point When the method completes, contains the point of intersection, or Zero if there was no intersection. | 
Returns
| System.Boolean Whether the two objects intersected. | 
Intersects(ref Ray, out Single)
Determines if there is an intersection between the current object and a Ray.
Declaration
public bool Intersects(ref Ray ray, out float distance)Parameters
| Ray
        ray The ray to test. | 
| System.Single
        distance When the method completes, contains the distance of the intersection, or 0 if there was no intersection. | 
Returns
| System.Boolean Whether the two objects intersected. | 
MakeOffsetted(ref BoundingBox, ref Vector3)
Creates the bounding box that is offseted by the given vector. Adds the offset value to minimum and maximum points.
Declaration
public static BoundingBox MakeOffsetted(ref BoundingBox box, ref Vector3 offset)Parameters
| BoundingBox
        box The box. | 
| Vector3
        offset The bounds offset. | 
Returns
| BoundingBox The offsetted bounds. | 
MakeOffsetted(Vector3)
Creates the bounding box that is offseted by the given vector. Adds the offset value to minimum and maximum points.
Declaration
public BoundingBox MakeOffsetted(Vector3 offset)Parameters
| Vector3
        offset The bounds offset. | 
Returns
| BoundingBox The offsetted bounds. | 
MakeScaled(ref BoundingBox, Single)
Creates the bounding box that is scaled by the given factor. Applies scale to the size of the bounds.
Declaration
public static BoundingBox MakeScaled(ref BoundingBox box, float scale)Parameters
| BoundingBox
        box The box. | 
| System.Single
        scale The bounds scale. | 
Returns
| BoundingBox The scaled bounds. | 
Merge(BoundingBox, BoundingBox)
Constructs a BoundingBox that is as large as the total combined area of the two specified boxes.
Declaration
public static BoundingBox Merge(BoundingBox value1, BoundingBox value2)Parameters
| BoundingBox
        value1 The first box to merge. | 
| BoundingBox
        value2 The second box to merge. | 
Returns
| BoundingBox The newly constructed bounding box. | 
Merge(ref BoundingBox, ref BoundingBox, out BoundingBox)
Constructs a BoundingBox that is as large as the total combined area of the two specified boxes.
Declaration
public static void Merge(ref BoundingBox value1, ref BoundingBox value2, out BoundingBox result)Parameters
| BoundingBox
        value1 The first box to merge. | 
| BoundingBox
        value2 The second box to merge. | 
| BoundingBox
        result When the method completes, contains the newly constructed bounding box. | 
Merge(ref BoundingBox, ref Vector3, out BoundingBox)
Constructs a BoundingBox that is as large as the box and point.
Declaration
public static void Merge(ref BoundingBox value1, ref Vector3 value2, out BoundingBox result)Parameters
| BoundingBox
        value1 The box to merge. | 
| Vector3
        value2 The point to merge. | 
| BoundingBox
        result When the method completes, contains the newly constructed bounding box. | 
Merge(Vector3)
Constructs a BoundingBox that is as large as the box and point.
Declaration
public BoundingBox Merge(Vector3 value2)Parameters
| Vector3
        value2 The point to merge. | 
Returns
| BoundingBox The newly constructed bounding box. | 
ToString()
Returns a System.String that represents this instance.
Declaration
public override string ToString()Returns
| System.String A System.String that represents this instance. | 
ToString(IFormatProvider)
Returns a System.String that represents this instance.
Declaration
public string ToString(IFormatProvider formatProvider)Parameters
| System.IFormatProvider
        formatProvider The format provider. | 
Returns
| System.String A System.String that represents this instance. | 
ToString(String)
Returns a System.String that represents this instance.
Declaration
public string ToString(string format)Parameters
| System.String
        format The format. | 
Returns
| System.String A System.String that represents this instance. | 
ToString(String, IFormatProvider)
Returns a System.String that represents this instance.
Declaration
public string ToString(string format, IFormatProvider formatProvider)Parameters
| System.String
        format The format. | 
| System.IFormatProvider
        formatProvider The format provider. | 
Returns
| System.String A System.String that represents this instance. | 
Transform(BoundingBox, Matrix)
Transforms bounding box using the given transformation matrix.
Declaration
public static BoundingBox Transform(BoundingBox box, Matrix transform)Parameters
| BoundingBox
        box The bounding box to transform. | 
| Matrix
        transform The transformation matrix. | 
Returns
| BoundingBox The result of the transformation. | 
Transform(BoundingBox, Transform)
Transforms bounding box using the given transformation matrix.
Declaration
public static BoundingBox Transform(BoundingBox box, Transform transform)Parameters
| BoundingBox
        box The bounding box to transform. | 
| Transform
        transform The transformation matrix. | 
Returns
| BoundingBox The result of the transformation. | 
Transform(ref BoundingBox, ref Matrix, out BoundingBox)
Transforms bounding box using the given transformation matrix.
Declaration
public static void Transform(ref BoundingBox box, ref Matrix transform, out BoundingBox result)Parameters
| BoundingBox
        box The bounding box to transform. | 
| Matrix
        transform The transformation matrix. | 
| BoundingBox
        result The result of the transformation. | 
Transform(ref BoundingBox, ref Transform, out BoundingBox)
Transforms bounding box using the given transformation.
Declaration
public static void Transform(ref BoundingBox box, ref Transform transform, out BoundingBox result)Parameters
| BoundingBox
        box The bounding box to transform. | 
| Transform
        transform The transformation. | 
| BoundingBox
        result The result of the transformation. | 
Operators
Equality(BoundingBox, BoundingBox)
Tests for equality between two objects.
Declaration
public static bool operator ==(BoundingBox left, BoundingBox right)Parameters
| BoundingBox
        left The first value to compare. | 
| BoundingBox
        right The second value to compare. | 
Returns
| System.Boolean 
 | 
Inequality(BoundingBox, BoundingBox)
Tests for inequality between two objects.
Declaration
public static bool operator !=(BoundingBox left, BoundingBox right)Parameters
| BoundingBox
        left The first value to compare. | 
| BoundingBox
        right The second value to compare. | 
Returns
| System.Boolean 
 | 
Multiply(BoundingBox, Matrix)
Transforms bounding box using the given transformation matrix.
Declaration
public static BoundingBox operator *(BoundingBox box, Matrix transform)Parameters
| BoundingBox
        box The bounding box to transform. | 
| Matrix
        transform The transformation matrix. | 
Returns
| BoundingBox The result of the transformation. |