UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MassProperties.cpp File Reference
#include "Chaos/MassProperties.h"
#include "Chaos/Rotation.h"
#include "Chaos/Matrix.h"
#include "Chaos/Particles.h"
#include "Chaos/TriangleMesh.h"
#include "Chaos/Utilities.h"
#include "ChaosCheck.h"
#include "Chaos/CastingUtilities.h"

Namespaces

namespace  Chaos
 

Functions

template<typename T >
TRotation< T, 3 > Chaos::TransformToLocalSpace (PMatrix< T, 3, 3 > &Inertia)
 
void Chaos::TransformToLocalSpace (FMassProperties &MassProperties)
 
void Chaos::CalculateVolumeAndCenterOfMass (const FBox &BoundingBox, FVector::FReal &OutVolume, FVector &OutCenterOfMass)
 
void Chaos::CalculateInertiaAndRotationOfMass (const FBox &BoundingBox, const FVector::FReal Density, FMatrix33 &OutInertiaTensor, FRotation3 &OutRotationOfMass)
 
FMassProperties Chaos::CalculateMassProperties (const FBox &BoundingBox, const FVector::FReal Density)
 
template<typename T , typename TVec , typename TSurfaces >
void Chaos::CalculateVolumeAndCenterOfMassImpl (const TArray< TVec > &Vertices, const TSurfaces &Surfaces, T &OutVolume, TVec &OutCenterOfMass)
 
template<typename T , typename TSurfaces >
void CHAOS_API Chaos::CalculateVolumeAndCenterOfMass (const TParticles< T, 3 > &Vertices, const TSurfaces &Surfaces, T &OutVolume, TVec3< T > &OutCenterOfMass)
 
template<typename T , typename TSurfaces >
void CHAOS_API Chaos::CalculateVolumeAndCenterOfMass (const TArray< TVec3< T > > &Vertices, const TSurfaces &Surfaces, T &OutVolume, TVec3< T > &OutCenterOfMass)
 
template<typename T , typename TSurfaces >
void CHAOS_API Chaos::CalculateVolumeAndCenterOfMass (const TArray< UE::Math::TVector< T > > &Vertices, const TSurfaces &Surfaces, T &OutVolume, UE::Math::TVector< T > &OutCenterOfMass)
 
template<typename T , typename TVec , typename TSurfaces >
void Chaos::CalculateInertiaAndRotationOfMassImpl (const TArray< TVec > &Vertices, const TSurfaces &Surfaces, const T Density, const TVec &CenterOfMass, PMatrix< T, 3, 3 > &OutInertiaTensor, TRotation< T, 3 > &OutRotationOfMass)
 
template<typename T , typename TSurfaces >
void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TParticles< T, 3 > &Vertices, const TSurfaces &Surfaces, const T Density, const TVec3< T > &CenterOfMass, PMatrix< T, 3, 3 > &OutInertiaTensor, TRotation< T, 3 > &OutRotationOfMass)
 
template<typename T , typename TSurfaces >
void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TArray< UE::Math::TVector< T > > &Vertices, const TSurfaces &Surfaces, const T Density, const UE::Math::TVector< T > &CenterOfMass, PMatrix< T, 3, 3 > &OutInertiaTensor, TRotation< T, 3 > &OutRotationOfMass)
 
template<typename TSurfaces >
FMassProperties Chaos::CalculateMassProperties (const FParticles &Vertices, const TSurfaces &Surfaces, const FReal Mass)
 
FMassProperties Chaos::Combine (const TArray< FMassProperties > &MPArray)
 
FMassProperties Chaos::CombineWorldSpace (const TArray< FMassProperties > &MPArray)
 
bool Chaos::CalculateMassPropertiesOfImplicitUnion (Chaos::FMassProperties &OutMassProperties, const Chaos::FRigidTransform3 &WorldTransform, const Chaos::FImplicitObjectUnion &ImplicitUnion, Chaos::FReal InDensityKGPerCM)
 
bool Chaos::CalculateMassPropertiesOfImplicitType (Chaos::FMassProperties &OutMassProperties, const Chaos::FRigidTransform3 &WorldTransform, const Chaos::FImplicitObject *ImplicitObject, Chaos::FReal InDensityKGPerCM)
 
void Chaos::CalculateMassPropertiesFromShapeCollection (Chaos::FMassProperties &OutProperties, int32 InNumShapes, Chaos::FReal InDensityKGPerCM, const TArray< bool > &bContributesToMass, TFunction< Chaos::FPerShapeData *(int32 ShapeIndex)> GetShapeDelegate)
 
template CHAOS_API TRotation< FRealSingle, 3 > Chaos::TransformToLocalSpace (PMatrix< FRealSingle, 3, 3 > &Inertia)
 
template CHAOS_API TRotation< FRealDouble, 3 > Chaos::TransformToLocalSpace (PMatrix< FRealDouble, 3, 3 > &Inertia)
 
template CHAOS_API FMassProperties Chaos::CalculateMassProperties (const FParticles &Vertices, const TArray< TVec3< int32 > > &Surfaces, const FReal Mass)
 
template CHAOS_API FMassProperties Chaos::CalculateMassProperties (const FParticles &Vertices, const TArray< TArray< int32 > > &Surfaces, const FReal Mass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TParticles< FRealDouble, 3 > &Vertices, const TArray< TVec3< int32 > > &Surfaces, FRealDouble &OutVolume, TVec3< FRealDouble > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TParticles< FRealDouble, 3 > &Vertices, const TArray< TArray< int32 > > &Surfaces, FRealDouble &OutVolume, TVec3< FRealDouble > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TParticles< FRealSingle, 3 > &Vertices, const TArray< TVec3< int32 > > &Surfaces, FRealSingle &OutVolume, TVec3< FRealSingle > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TParticles< FRealSingle, 3 > &Vertices, const TArray< TArray< int32 > > &Surfaces, FRealSingle &OutVolume, TVec3< FRealSingle > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TArray< TVec3< FRealSingle > > &Vertices, const TArray< TArray< int32 > > &Surfaces, FRealSingle &OutVolume, TVec3< FRealSingle > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TArray< TVec3< FRealDouble > > &Vertices, const TArray< TArray< int32 > > &Surfaces, FRealDouble &OutVolume, TVec3< FRealDouble > &OutCenterOfMass)
 
template CHAOS_API void Chaos::CalculateVolumeAndCenterOfMass (const TArray< UE::Math::TVector< float > > &Vertices, const TArray< TVec3< int32 > > &Surfaces, float &OutVolume, UE::Math::TVector< float > &OutCenterOfMass)
 
template void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TParticles< FRealSingle, 3 > &Vertices, const TArray< TVec3< int32 > > &Surfaces, const FRealSingle Density, const TVec3< FRealSingle > &CenterOfMass, PMatrix< FRealSingle, 3, 3 > &OutInertiaTensor, TRotation< FRealSingle, 3 > &OutRotationOfMass)
 
template void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TParticles< FRealSingle, 3 > &Vertices, const TArray< TArray< int32 > > &Surfaces, const FRealSingle Density, const TVec3< FRealSingle > &CenterOfMass, PMatrix< FRealSingle, 3, 3 > &OutInertiaTensor, TRotation< FRealSingle, 3 > &OutRotationOfMass)
 
template void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TParticles< FRealDouble, 3 > &Vertices, const TArray< TVec3< int32 > > &Surfaces, const FRealDouble Density, const TVec3< FRealDouble > &CenterOfMass, PMatrix< FRealDouble, 3, 3 > &OutInertiaTensor, TRotation< FRealDouble, 3 > &OutRotationOfMass)
 
template void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TParticles< FRealDouble, 3 > &Vertices, const TArray< TArray< int32 > > &Surfaces, const FRealDouble Density, const TVec3< FRealDouble > &CenterOfMass, PMatrix< FRealDouble, 3, 3 > &OutInertiaTensor, TRotation< FRealDouble, 3 > &OutRotationOfMass)
 
template void CHAOS_API Chaos::CalculateInertiaAndRotationOfMass (const TArray< UE::Math::TVector< float > > &Vertices, const TArray< TVec3< int32 > > &Surfaces, const float Density, const UE::Math::TVector< float > &CenterOfMass, PMatrix< float, 3, 3 > &OutInertiaTensor, TRotation< float, 3 > &OutRotationOfMass)