Table of Contents

Class BoundingBoxHelpers

Namespace
BepuPhysics
Assembly
BepuPhysics.dll
public static class BoundingBoxHelpers
Inheritance
BoundingBoxHelpers
Inherited Members

Methods

ExpandBoundingBox(in Vector3Wide, ref Vector3Wide, ref Vector3Wide)

public static void ExpandBoundingBox(in Vector3Wide expansion, ref Vector3Wide min, ref Vector3Wide max)

Parameters

expansion Vector3Wide
min Vector3Wide
max Vector3Wide

ExpandBoundingBox(Vector3, ref Vector3, ref Vector3)

public static void ExpandBoundingBox(Vector3 expansion, ref Vector3 min, ref Vector3 max)

Parameters

expansion Vector3
min Vector3
max Vector3

ExpandBoundingBox(ref Vector3, ref Vector3, Vector3, Vector3, float, float, float, float)

public static void ExpandBoundingBox(ref Vector3 min, ref Vector3 max, Vector3 linearVelocity, Vector3 angularVelocity, float dt, float maximumRadius, float maximumAngularExpansion, float maximumAllowedExpansion)

Parameters

min Vector3
max Vector3
linearVelocity Vector3
angularVelocity Vector3
dt float
maximumRadius float
maximumAngularExpansion float
maximumAllowedExpansion float

ExpandBoundingBoxes(BodyVelocityWide, Vector<float>, Vector<float>, Vector<float>, Vector<float>, ref Vector3Wide, ref Vector3Wide)

public static void ExpandBoundingBoxes(BodyVelocityWide velocities, Vector<float> dtWide, Vector<float> maximumRadius, Vector<float> maximumAngularExpansion, Vector<float> maximumExpansion, ref Vector3Wide min, ref Vector3Wide max)

Parameters

velocities BodyVelocityWide
dtWide Vector<float>
maximumRadius Vector<float>
maximumAngularExpansion Vector<float>
maximumExpansion Vector<float>
min Vector3Wide
max Vector3Wide

ExpandLocalBoundingBoxes(ref Vector3Wide, ref Vector3Wide, in Vector<float>, in Vector3Wide, in Vector3Wide, in Vector3Wide, in Vector3Wide, float, in Vector<float>, in Vector<float>, in Vector<float>)

Expands the bounding box surrounding a shape A in the local space of some other collidable B.

public static void ExpandLocalBoundingBoxes(ref Vector3Wide min, ref Vector3Wide max, in Vector<float> radiusA, in Vector3Wide localPositionA, in Vector3Wide localRelativeLinearVelocityA, in Vector3Wide angularVelocityA, in Vector3Wide angularVelocityB, float dt, in Vector<float> maximumRadius, in Vector<float> maximumAngularExpansion, in Vector<float> maximumAllowedExpansion)

Parameters

min Vector3Wide
max Vector3Wide
radiusA Vector<float>
localPositionA Vector3Wide
localRelativeLinearVelocityA Vector3Wide
angularVelocityA Vector3Wide
angularVelocityB Vector3Wide
dt float
maximumRadius Vector<float>
maximumAngularExpansion Vector<float>
maximumAllowedExpansion Vector<float>

GetAngularBoundsExpansion(Vector<float>, Vector<float>, Vector<float>, Vector<float>)

public static Vector<float> GetAngularBoundsExpansion(Vector<float> angularSpeed, Vector<float> vectorDt, Vector<float> maximumRadius, Vector<float> maximumAngularExpansion)

Parameters

angularSpeed Vector<float>
vectorDt Vector<float>
maximumRadius Vector<float>
maximumAngularExpansion Vector<float>

Returns

Vector<float>

GetAngularBoundsExpansion(float, float, float, float)

public static float GetAngularBoundsExpansion(float angularVelocityMagnitude, float dt, float maximumRadius, float maximumAngularExpansion)

Parameters

angularVelocityMagnitude float
dt float
maximumRadius float
maximumAngularExpansion float

Returns

float

GetBoundsExpansion(Vector3Wide, Vector3Wide, Vector<float>, Vector<float>, Vector<float>, out Vector3Wide, out Vector3Wide)

public static void GetBoundsExpansion(Vector3Wide linearVelocity, Vector3Wide angularVelocity, Vector<float> dtWide, Vector<float> maximumRadius, Vector<float> maximumAngularExpansion, out Vector3Wide minBoundsExpansion, out Vector3Wide maxBoundsExpansion)

Parameters

linearVelocity Vector3Wide
angularVelocity Vector3Wide
dtWide Vector<float>
maximumRadius Vector<float>
maximumAngularExpansion Vector<float>
minBoundsExpansion Vector3Wide
maxBoundsExpansion Vector3Wide

GetBoundsExpansion(Vector3Wide, Vector<float>, Vector<float>, out Vector3Wide, out Vector3Wide)

public static void GetBoundsExpansion(Vector3Wide linearVelocity, Vector<float> dtWide, Vector<float> angularExpansion, out Vector3Wide minExpansion, out Vector3Wide maxExpansion)

Parameters

linearVelocity Vector3Wide
dtWide Vector<float>
angularExpansion Vector<float>
minExpansion Vector3Wide
maxExpansion Vector3Wide

GetBoundsExpansion(Vector3, Vector3, float, float, float, float, out Vector3, out Vector3)

public static void GetBoundsExpansion(Vector3 linearVelocity, Vector3 angularVelocity, float dt, float maximumRadius, float maximumAngularExpansion, float maximumAllowedExpansion, out Vector3 minExpansion, out Vector3 maxExpansion)

Parameters

linearVelocity Vector3
angularVelocity Vector3
dt float
maximumRadius float
maximumAngularExpansion float
maximumAllowedExpansion float
minExpansion Vector3
maxExpansion Vector3

GetBoundsExpansion(Vector3, float, float, out Vector3, out Vector3)

public static void GetBoundsExpansion(Vector3 linearVelocity, float dt, float angularExpansion, out Vector3 minExpansion, out Vector3 maxExpansion)

Parameters

linearVelocity Vector3
dt float
angularExpansion float
minExpansion Vector3
maxExpansion Vector3

GetLocalBoundingBoxForSweep(TypedIndex, Shapes, in RigidPose, Quaternion, in BodyVelocity, Vector3, Quaternion, in BodyVelocity, float, out Vector3, out Vector3, out Vector3)

Computes the bounding box of a child shape A in the local space of some other collidable B with a sweep direction representing the net linear motion.

public static void GetLocalBoundingBoxForSweep(TypedIndex shapeIndex, Shapes shapes, in RigidPose shapePoseLocalToA, Quaternion orientationA, in BodyVelocity velocityA, Vector3 offsetB, Quaternion orientationB, in BodyVelocity velocityB, float dt, out Vector3 sweep, out Vector3 min, out Vector3 max)

Parameters

shapeIndex TypedIndex
shapes Shapes
shapePoseLocalToA RigidPose
orientationA Quaternion
velocityA BodyVelocity
offsetB Vector3
orientationB Quaternion
velocityB BodyVelocity
dt float
sweep Vector3
min Vector3
max Vector3

GetLocalBoundingBoxForSweep<TConvex>(ref TConvex, Quaternion, in BodyVelocity, Vector3, Quaternion, in BodyVelocity, float, out Vector3, out Vector3, out Vector3)

Computes the bounding box of shape A in the local space of some other collidable B with a sweep direction representing the net linear motion.

public static void GetLocalBoundingBoxForSweep<TConvex>(ref TConvex shape, Quaternion orientationA, in BodyVelocity velocityA, Vector3 offsetB, Quaternion orientationB, in BodyVelocity velocityB, float dt, out Vector3 sweep, out Vector3 min, out Vector3 max) where TConvex : struct, IConvexShape

Parameters

shape TConvex
orientationA Quaternion
velocityA BodyVelocity
offsetB Vector3
orientationB Quaternion
velocityB BodyVelocity
dt float
sweep Vector3
min Vector3
max Vector3

Type Parameters

TConvex