Navigation
API > API/Runtime > API/Runtime/Chaos
This implementation provides a fast way of constructing Tribox in order to be used at runtime to build approximate convex implicit object
| Name | FTribox |
| Type | class |
| Header File | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/Tribox.h |
| Include Path | #include "Chaos/Tribox.h" |
Syntax
class FTribox
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FTribox () |
Base Constructor. | Chaos/Tribox.h | |
| Base Constructor. | Chaos/Tribox.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FMatrix33Type | PMatrix< FRealType, 3, 3 > | Chaos/Tribox.h | |
| FPlaneType | TPlaneConcrete< FRealType, 3 > | Chaos/Tribox.h | |
| FRealType | FRealSingle | Chaos/Tribox.h | |
| FRigidTransform3Type | TRigidTransform< FRealType, 3 > | Chaos/Tribox.h | |
| FVec3Type | TVec3< FRealType > | Chaos/Tribox.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| InflateDistance | FRealType | Distance used to inflate the Tribox to avoid degenerate case. | Chaos/Tribox.h |
| NumChamferPlanes | int32 | Number of chamfer planes. | Chaos/Tribox.h |
| NumPlanes | int32 | Number of planes that will be used to define the Tribox. | Chaos/Tribox.h |
| NumPrincipalPlanes | int32 | Number of principal planes. | Chaos/Tribox.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bHasDatas | bool | Boolean to specify if the tribox has been built with datas or not. | Chaos/Tribox.h | |
| bIsValid | bool | Boolean to specify if the tribox is valid or not. | Chaos/Tribox.h | |
| MaxDists | FRealType | Max distance along eaxh tribox axis (principal + chamfer) | Chaos/Tribox.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddConvex
(
const FConvex* Convex, |
Add convex vertices to a tribox. | Chaos/Tribox.h | |
void AddPoint
(
const FVec3Type& PointPosition |
Add a point position to the Tribox. | Chaos/Tribox.h | |
bool BuildTribox() |
Inflate + Scale the Max distances. | Chaos/Tribox.h | |
FRealType ComputeVolume() |
Compute the tribox volume. | Chaos/Tribox.h | |
FAABB3 GetBounds() |
Get the bounding box. | Chaos/Tribox.h | |
FVec3Type GetCenter() |
Get the tribox center. | Chaos/Tribox.h | |
FRealType GetClosestPlane
(
const FVec3Type& PointPosition, |
Get the closest plane along the +X,-X,+Y,-Y,+Z,-Z directions. | Chaos/Tribox.h | |
int32 GetThickestSlab() |
Get the thickest tribox slab. | Chaos/Tribox.h | |
bool HasDatas() |
Check ihe tribox have been built with datas. | Chaos/Tribox.h | |
bool IsTriboxOverlapping
(
const FTribox& OtherTribox |
Check if the tribox is overlapping or not. | Chaos/Tribox.h | |
bool IsValid() |
Check ihe tribox is valid. | Chaos/Tribox.h | |
FImplicitObjectPtr MakeConvex() |
Create a convex from the Tribox. | Chaos/Tribox.h | |
| Find the overlapping tribox. | Chaos/Tribox.h | ||
void ResetDists() |
Reset the tribox max distances. | Chaos/Tribox.h | |
FRealType SampleSlabPoint
(
const int32 PlaneAxis, |
Sample a point along the plane direction in betwen min and max. | Chaos/Tribox.h | |
void SetValid
(
const bool bValid |
Set the valid flag. | Chaos/Tribox.h | |
| Split the tribox in 2 along a defined cuttng plane. | Chaos/Tribox.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Add a tribox to this and return a new one. | Chaos/Tribox.h | ||
| Add a tribox to this and return this. | Chaos/Tribox.h |