Skip to content

Documentation / scene / SpringSystem

Class: SpringSystem

Defined in: libs/scene/src/animation/spring/spring_system.ts:96

Physics engine for spring-based particle simulation Uses Verlet integration and iterative constraint solving

Constructors

Constructor

new SpringSystem(chain, options?): SpringSystem

Defined in: libs/scene/src/animation/spring/spring_system.ts:120

Parameters

chain

SpringChain

options?

SpringSystemOptions

Returns

SpringSystem

Accessors

chain

Get Signature

get chain(): SpringChain

Defined in: libs/scene/src/animation/spring/spring_system.ts:778

Gets the spring chain

Returns

SpringChain


gravity

Get Signature

get gravity(): Vector3

Defined in: libs/scene/src/animation/spring/spring_system.ts:785

Gets the current gravity

Returns

Vector3

Set Signature

set gravity(gravity): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:789

Parameters
gravity

Vector3

Returns

void


wind

Get Signature

get wind(): Vector3

Defined in: libs/scene/src/animation/spring/spring_system.ts:796

Gets the current wind

Returns

Vector3

Set Signature

set wind(wind): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:800

Parameters
wind

Vector3

Returns

void


iterations

Get Signature

get iterations(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:807

Gets the number of iterations

Returns

number

Set Signature

set iterations(count): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:811

Parameters
count

number

Returns

void


enableInertialForces

Get Signature

get enableInertialForces(): boolean

Defined in: libs/scene/src/animation/spring/spring_system.ts:818

Gets whether inertial forces are enabled

Returns

boolean

Set Signature

set enableInertialForces(enabled): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:822

Parameters
enabled

boolean

Returns

void


centrifugalScale

Get Signature

get centrifugalScale(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:829

Gets the centrifugal force scale

Returns

number

Set Signature

set centrifugalScale(scale): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:833

Parameters
scale

number

Returns

void


coriolisScale

Get Signature

get coriolisScale(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:840

Gets the Coriolis force scale

Returns

number

Set Signature

set coriolisScale(scale): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:844

Parameters
scale

number

Returns

void


solver

Get Signature

get solver(): "verlet" | "xpbd"

Defined in: libs/scene/src/animation/spring/spring_system.ts:851

Gets the constraint solver type

Returns

"verlet" | "xpbd"

Set Signature

set solver(type): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:855

Parameters
type

"verlet" | "xpbd"

Returns

void


poseFollow

Get Signature

get poseFollow(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:869

Gets pose preservation strength [0-1]

Returns

number

Set Signature

set poseFollow(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:873

Parameters
value

number

Returns

void


maxPoseOffset

Get Signature

get maxPoseOffset(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:883

Gets max allowed deviation from animated pose

Returns

number

Set Signature

set maxPoseOffset(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:887

Parameters
value

number

Returns

void


poseFollowRoot

Get Signature

get poseFollowRoot(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:897

Gets root pose follow strength [0-1]

Returns

number

Set Signature

set poseFollowRoot(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:901

Parameters
value

number

Returns

void


poseFollowTip

Get Signature

get poseFollowTip(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:908

Gets tip pose follow strength [0-1]

Returns

number

Set Signature

set poseFollowTip(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:912

Parameters
value

number

Returns

void


poseFollowExponent

Get Signature

get poseFollowExponent(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:919

Gets exponent for root-to-tip interpolation

Returns

number

Set Signature

set poseFollowExponent(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:923

Parameters
value

number

Returns

void


maxPoseOffsetRoot

Get Signature

get maxPoseOffsetRoot(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:930

Gets root max allowed deviation from animated pose

Returns

number

Set Signature

set maxPoseOffsetRoot(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:934

Parameters
value

number

Returns

void


maxPoseOffsetTip

Get Signature

get maxPoseOffsetTip(): number

Defined in: libs/scene/src/animation/spring/spring_system.ts:941

Gets tip max allowed deviation from animated pose

Returns

number

Set Signature

set maxPoseOffsetTip(value): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:945

Parameters
value

number

Returns

void


colliders

Get Signature

get colliders(): SpringCollider[]

Defined in: libs/scene/src/animation/spring/spring_system.ts:987

Gets all colliders

Returns

SpringCollider[]

Methods

update()

update(deltaTime): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:149

Updates the physics simulation

Parameters

deltaTime

number

Time step in seconds

Returns

void


applyToNodes()

applyToNodes(weight?): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:688

Applies simulation results to scene nodes

Parameters

weight?

number = 1.0

Blend weight [0-1] (default: 1.0)

Returns

void


reset()

reset(): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:758

Resets the simulation to initial state

Returns

void


addCollider()

addCollider(collider): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:952

Adds a collider to the system

Parameters

collider

SpringCollider

Returns

void


removeCollider()

removeCollider(collider): boolean

Defined in: libs/scene/src/animation/spring/spring_system.ts:962

Removes a collider from the system

Parameters

collider

SpringCollider

Returns

boolean


clearColliders()

clearColliders(): void

Defined in: libs/scene/src/animation/spring/spring_system.ts:977

Clears all colliders

Returns

void

Released under the MIT License.