UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::Softs::FPBDPlanarConstraints Class Reference

#include <PBDPlanarConstraints.h>

+ Inheritance diagram for Chaos::Softs::FPBDPlanarConstraints:

Public Member Functions

 FPBDPlanarConstraints ()=default
 
virtual ~FPBDPlanarConstraints ()=default
 
 FPBDPlanarConstraints (FSolverReal InFrictionCoefficient)
 
void SetFrictionCoefficient (const FSolverReal InFrictionCoefficient)
 
void SetCollisionData (TArray< int32 > &&InUniqueConstraintIndices, TArray< FSolverVec3 > &&InTargetPositions, TArray< FSolverVec3 > &&InTargetNormals, TArray< FSolverVec3 > &&InTargetVelocities)
 
void Reset ()
 
CHAOS_API void Apply (FSolverParticlesRange &Particles, const FSolverReal Dt) const
 
const TArray< int32 > & GetUniqueConstraintIndices () const
 
const TArray< FSolverVec3 > & GetTargetPositions () const
 
const TArray< FSolverVec3 > & GetTargetNormals () const
 
const TArray< FSolverVec3 > & GetTargetVelocities () const
 

Protected Attributes

FSolverReal FrictionCoefficient = (FSolverReal)0.
 
TArray< int32UniqueConstraintIndices
 
TArray< FSolverVec3TargetPositions
 
TArray< FSolverVec3TargetNormals
 
TArray< FSolverVec3TargetVelocities
 

Detailed Description

Simple planar constraints with friction. This assumes that the Indices are unique and thus can be solved in parallel.

Constructor & Destructor Documentation

◆ FPBDPlanarConstraints() [1/2]

Chaos::Softs::FPBDPlanarConstraints::FPBDPlanarConstraints ( )
default

◆ ~FPBDPlanarConstraints()

virtual Chaos::Softs::FPBDPlanarConstraints::~FPBDPlanarConstraints ( )
virtualdefault

◆ FPBDPlanarConstraints() [2/2]

Chaos::Softs::FPBDPlanarConstraints::FPBDPlanarConstraints ( FSolverReal  InFrictionCoefficient)
inline

Member Function Documentation

◆ Apply()

void Chaos::Softs::FPBDPlanarConstraints::Apply ( FSolverParticlesRange Particles,
const FSolverReal  Dt 
) const

◆ GetTargetNormals()

const TArray< FSolverVec3 > & Chaos::Softs::FPBDPlanarConstraints::GetTargetNormals ( ) const
inline

◆ GetTargetPositions()

const TArray< FSolverVec3 > & Chaos::Softs::FPBDPlanarConstraints::GetTargetPositions ( ) const
inline

◆ GetTargetVelocities()

const TArray< FSolverVec3 > & Chaos::Softs::FPBDPlanarConstraints::GetTargetVelocities ( ) const
inline

◆ GetUniqueConstraintIndices()

const TArray< int32 > & Chaos::Softs::FPBDPlanarConstraints::GetUniqueConstraintIndices ( ) const
inline

◆ Reset()

void Chaos::Softs::FPBDPlanarConstraints::Reset ( )
inline

◆ SetCollisionData()

void Chaos::Softs::FPBDPlanarConstraints::SetCollisionData ( TArray< int32 > &&  InUniqueConstraintIndices,
TArray< FSolverVec3 > &&  InTargetPositions,
TArray< FSolverVec3 > &&  InTargetNormals,
TArray< FSolverVec3 > &&  InTargetVelocities 
)
inline

◆ SetFrictionCoefficient()

void Chaos::Softs::FPBDPlanarConstraints::SetFrictionCoefficient ( const FSolverReal  InFrictionCoefficient)
inline

Member Data Documentation

◆ FrictionCoefficient

FSolverReal Chaos::Softs::FPBDPlanarConstraints::FrictionCoefficient = (FSolverReal)0.
protected

◆ TargetNormals

TArray<FSolverVec3> Chaos::Softs::FPBDPlanarConstraints::TargetNormals
protected

◆ TargetPositions

TArray<FSolverVec3> Chaos::Softs::FPBDPlanarConstraints::TargetPositions
protected

◆ TargetVelocities

TArray<FSolverVec3> Chaos::Softs::FPBDPlanarConstraints::TargetVelocities
protected

◆ UniqueConstraintIndices

TArray<int32> Chaos::Softs::FPBDPlanarConstraints::UniqueConstraintIndices
protected

The documentation for this class was generated from the following files: