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

#include <PBDAxialSpringConstraints.h>

+ Inheritance diagram for Chaos::Softs::FPBDAreaSpringConstraints:

Public Member Functions

 FPBDAreaSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVec3< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection, bool bTrimKinematicConstraints)
 
 FPBDAreaSpringConstraints (const FSolverParticles &Particles, int32 InParticleOffset, int32 InParticleCount, const TArray< TVec3< int32 > > &InConstraints, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection, bool bTrimKinematicConstraints)
 
CHAOS_API FPBDAreaSpringConstraints (const FSolverParticlesRange &Particles, const FTriangleMesh &TriangleMesh, const TArray< TVec3< FVec2f > > &FaceVertexPatternPositions, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps, const FCollectionPropertyConstFacade &PropertyCollection, bool bTrimKinematicConstraints=false)
 
virtual ~FPBDAreaSpringConstraints () override=default
 
CHAOS_API void SetProperties (const FCollectionPropertyConstFacade &PropertyCollection, const TMap< FString, TConstArrayView< FRealSingle > > &WeightMaps)
 
CHAOS_API void ApplyProperties (const FSolverReal Dt, const int32 NumIterations)
 
 UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (AreaSpringStiffness, float)
 
 UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (AreaSpringWarpScale, float)
 
 UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME (AreaSpringWeftScale, float)
 
- Public Member Functions inherited from Chaos::Softs::FPBDAxialSpringConstraints
 FPBDAxialSpringConstraints (const FSolverParticlesRange &Particles, const TArray< TVec3< int32 > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints, bool bInitColor=true)
 
 FPBDAxialSpringConstraints (const FSolverParticles &Particles, int32 InParticleOffset, int32 InParticleCount, const TArray< TVec3< int32 > > &InConstraints, const TConstArrayView< FRealSingle > &StiffnessMultipliers, const FSolverVec2 &InStiffness, bool bTrimKinematicConstraints, bool bInitColor=true)
 
virtual ~FPBDAxialSpringConstraints () override
 
template<typename SolverParticlesOrRange >
CHAOS_API void Apply (SolverParticlesOrRange &InParticles, const FSolverReal Dt) const
 
template<typename SolverParticlesOrRange >
TArray< int32InitColor (const SolverParticlesOrRange &InParticles)
 
template<typename SolverParticlesOrRange >
void Apply (SolverParticlesOrRange &Particles, const FSolverReal Dt) const
 
- Public Member Functions inherited from 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)
 
 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)
 

Static Public Member Functions

static bool IsEnabled (const FCollectionPropertyConstFacade &PropertyCollection)
 

Additional Inherited Members

- Protected Member Functions inherited from Chaos::Softs::FPBDAxialSpringConstraints
template<typename SolverParticlesOrRange >
CHAOS_API TArray< int32InitColor (const SolverParticlesOrRange &InParticles)
 
- Protected Member Functions inherited from Chaos::Softs::FPBDAxialSpringConstraintsBase
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 inherited from Chaos::Softs::FPBDAxialSpringConstraints
TArray< TVec3< int32 > > Constraints
 
TArray< FSolverRealBarys
 
FPBDStiffness Stiffness
 
const int32 ParticleOffset
 
const int32 ParticleCount
 
- Protected Attributes inherited from Chaos::Softs::FPBDAxialSpringConstraintsBase
TArray< TVec3< int32 > > Constraints
 
const int32 ParticleOffset
 
const int32 ParticleCount
 
TArray< FSolverRealBarys
 
TArray< FSolverRealDists
 
FPBDStiffness Stiffness
 

Constructor & Destructor Documentation

◆ FPBDAreaSpringConstraints() [1/3]

Chaos::Softs::FPBDAreaSpringConstraints::FPBDAreaSpringConstraints ( const FSolverParticlesRange Particles,
const TArray< TVec3< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection,
bool  bTrimKinematicConstraints 
)
inline

◆ FPBDAreaSpringConstraints() [2/3]

Chaos::Softs::FPBDAreaSpringConstraints::FPBDAreaSpringConstraints ( const FSolverParticles Particles,
int32  InParticleOffset,
int32  InParticleCount,
const TArray< TVec3< int32 > > &  InConstraints,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection,
bool  bTrimKinematicConstraints 
)
inline

◆ FPBDAreaSpringConstraints() [3/3]

Chaos::Softs::FPBDAreaSpringConstraints::FPBDAreaSpringConstraints ( const FSolverParticlesRange Particles,
const FTriangleMesh TriangleMesh,
const TArray< TVec3< FVec2f > > &  FaceVertexPatternPositions,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps,
const FCollectionPropertyConstFacade PropertyCollection,
bool  bTrimKinematicConstraints = false 
)

This version of the constructor supports Warp and Weft Scale

◆ ~FPBDAreaSpringConstraints()

virtual Chaos::Softs::FPBDAreaSpringConstraints::~FPBDAreaSpringConstraints ( )
overridevirtualdefault

Member Function Documentation

◆ ApplyProperties()

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

◆ IsEnabled()

static bool Chaos::Softs::FPBDAreaSpringConstraints::IsEnabled ( const FCollectionPropertyConstFacade PropertyCollection)
inlinestatic

◆ SetProperties()

void Chaos::Softs::FPBDAreaSpringConstraints::SetProperties ( const FCollectionPropertyConstFacade PropertyCollection,
const TMap< FString, TConstArrayView< FRealSingle > > &  WeightMaps 
)

◆ UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME() [1/3]

Chaos::Softs::FPBDAreaSpringConstraints::UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME ( AreaSpringStiffness  ,
float   
)

◆ UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME() [2/3]

Chaos::Softs::FPBDAreaSpringConstraints::UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME ( AreaSpringWarpScale  ,
float   
)

◆ UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME() [3/3]

Chaos::Softs::FPBDAreaSpringConstraints::UE_CHAOS_DECLARE_INDEXLESS_PROPERTYCOLLECTION_NAME ( AreaSpringWeftScale  ,
float   
)

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