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

#include <PBDAxialSpringConstraintsBase.h>

+ Inheritance diagram for Chaos::Softs::FPBDAxialSpringConstraintsBase:

Public Member Functions

 FPBDAxialSpringConstraintsBase (const FSolverParticlesRange &Particles, const TArray< TVec3< int32 > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints, FSolverReal MaxStiffness=FPBDStiffness::DefaultPBDMaxStiffness)
 
 FPBDAxialSpringConstraintsBase (const FSolverParticles &Particles, int32 InParticleOffset, int32 InParticleCount, const TArray< TVec3< int32 > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints, FSolverReal MaxStiffness=FPBDStiffness::DefaultPBDMaxStiffness)
 
virtual ~FPBDAxialSpringConstraintsBase ()
 
void SetProperties (const FSolverVec2 &InStiffness)
 
void ApplyProperties (const FSolverReal Dt, const int32 NumIterations)
 
const TArray< TVec3< int32 > > & GetConstraints () const
 
const TArray< FSolverReal > & GetBarys () const
 
void ResetRestLengths (const TConstArrayView< FSolverVec3 > &Positions)
 

Protected Member Functions

void CalculateRestLengths (const TConstArrayView< FSolverVec3 > &Positions, const TArrayView< FSolverReal > &DistsToCompute) const
 
template<typename VectorType >
VectorType GetSpringDiff (const VectorType &P1, const VectorType &P2, const VectorType &P3, const FSolverReal Bary) const
 
template<typename SolverParticlesOrRange >
FSolverVec3 GetDelta (const SolverParticlesOrRange &Particles, const int32 ConstraintIndex, const FSolverReal ExpStiffnessValue) const
 

Protected Attributes

TArray< TVec3< int32 > > Constraints
 
const int32 ParticleOffset
 
const int32 ParticleCount
 
TArray< FSolverRealBarys
 
TArray< FSolverRealDists
 
FPBDStiffness Stiffness
 

Constructor & Destructor Documentation

◆ FPBDAxialSpringConstraintsBase() [1/2]

Chaos::Softs::FPBDAxialSpringConstraintsBase::FPBDAxialSpringConstraintsBase ( const FSolverParticlesRange Particles,
const TArray< TVec3< int32 > > &  InConstraints,
const TConstArrayView< FRealSingle > &  StiffnessMultipliers,
const FSolverVec2 InStiffness,
bool  bTrimKinematicConstraints,
FSolverReal  MaxStiffness = FPBDStiffness::DefaultPBDMaxStiffness 
)
inline

◆ FPBDAxialSpringConstraintsBase() [2/2]

Chaos::Softs::FPBDAxialSpringConstraintsBase::FPBDAxialSpringConstraintsBase ( const FSolverParticles Particles,
int32  InParticleOffset,
int32  InParticleCount,
const TArray< TVec3< int32 > > &  InConstraints,
const TConstArrayView< FRealSingle > &  StiffnessMultipliers,
const FSolverVec2 InStiffness,
bool  bTrimKinematicConstraints,
FSolverReal  MaxStiffness = FPBDStiffness::DefaultPBDMaxStiffness 
)
inline

◆ ~FPBDAxialSpringConstraintsBase()

virtual Chaos::Softs::FPBDAxialSpringConstraintsBase::~FPBDAxialSpringConstraintsBase ( )
inlinevirtual

Member Function Documentation

◆ ApplyProperties()

void Chaos::Softs::FPBDAxialSpringConstraintsBase::ApplyProperties ( const FSolverReal  Dt,
const int32  NumIterations 
)
inline

◆ CalculateRestLengths()

void Chaos::Softs::FPBDAxialSpringConstraintsBase::CalculateRestLengths ( const TConstArrayView< FSolverVec3 > &  Positions,
const TArrayView< FSolverReal > &  DistsToCompute 
) const
inlineprotected

◆ GetBarys()

const TArray< FSolverReal > & Chaos::Softs::FPBDAxialSpringConstraintsBase::GetBarys ( ) const
inline

◆ GetConstraints()

const TArray< TVec3< int32 > > & Chaos::Softs::FPBDAxialSpringConstraintsBase::GetConstraints ( ) const
inline

◆ GetDelta()

FSolverVec3 Chaos::Softs::FPBDAxialSpringConstraintsBase::GetDelta ( const SolverParticlesOrRange Particles,
const int32  ConstraintIndex,
const FSolverReal  ExpStiffnessValue 
) const
inlineprotected

◆ GetSpringDiff()

template<typename VectorType >
VectorType Chaos::Softs::FPBDAxialSpringConstraintsBase::GetSpringDiff ( const VectorType &  P1,
const VectorType &  P2,
const VectorType &  P3,
const FSolverReal  Bary 
) const
inlineprotected

◆ ResetRestLengths()

void Chaos::Softs::FPBDAxialSpringConstraintsBase::ResetRestLengths ( const TConstArrayView< FSolverVec3 > &  Positions)
inline

◆ SetProperties()

void Chaos::Softs::FPBDAxialSpringConstraintsBase::SetProperties ( const FSolverVec2 InStiffness)
inline

Member Data Documentation

◆ Barys

TArray<FSolverReal> Chaos::Softs::FPBDAxialSpringConstraintsBase::Barys
protected

◆ Constraints

TArray<TVec3<int32> > Chaos::Softs::FPBDAxialSpringConstraintsBase::Constraints
protected

◆ Dists

TArray<FSolverReal> Chaos::Softs::FPBDAxialSpringConstraintsBase::Dists
protected

◆ ParticleCount

const int32 Chaos::Softs::FPBDAxialSpringConstraintsBase::ParticleCount
protected

◆ ParticleOffset

const int32 Chaos::Softs::FPBDAxialSpringConstraintsBase::ParticleOffset
protected

◆ Stiffness

FPBDStiffness Chaos::Softs::FPBDAxialSpringConstraintsBase::Stiffness
protected

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