Skip to content

Documentation / scene / SpringSystem

Class: SpringSystem

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

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:118

Parameters

chain

SpringChain

options?

SpringSystemOptions

Returns

SpringSystem

Accessors

chain

Get Signature

get chain(): SpringChain

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

Gets the spring chain

Returns

SpringChain


gravity

Get Signature

get gravity(): Vector3

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

Gets the current gravity

Returns

Vector3

Set Signature

set gravity(gravity): void

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

Parameters
gravity

Vector3

Returns

void


wind

Get Signature

get wind(): Vector3

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

Gets the current wind

Returns

Vector3

Set Signature

set wind(wind): void

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

Parameters
wind

Vector3

Returns

void


iterations

Get Signature

get iterations(): number

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

Gets the number of iterations

Returns

number

Set Signature

set iterations(count): void

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

Parameters
count

number

Returns

void


enableInertialForces

Get Signature

get enableInertialForces(): boolean

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

Gets whether inertial forces are enabled

Returns

boolean

Set Signature

set enableInertialForces(enabled): void

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

Parameters
enabled

boolean

Returns

void


centrifugalScale

Get Signature

get centrifugalScale(): number

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

Gets the centrifugal force scale

Returns

number

Set Signature

set centrifugalScale(scale): void

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

Parameters
scale

number

Returns

void


coriolisScale

Get Signature

get coriolisScale(): number

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

Gets the Coriolis force scale

Returns

number

Set Signature

set coriolisScale(scale): void

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

Parameters
scale

number

Returns

void


solver

Get Signature

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

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

Gets the constraint solver type

Returns

"verlet" | "xpbd"

Set Signature

set solver(type): void

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

Parameters
type

"verlet" | "xpbd"

Returns

void


poseFollow

Get Signature

get poseFollow(): number

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

Gets pose preservation strength [0-1]

Returns

number

Set Signature

set poseFollow(value): void

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

Parameters
value

number

Returns

void


maxPoseOffset

Get Signature

get maxPoseOffset(): number

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

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:877

Parameters
value

number

Returns

void


poseFollowRoot

Get Signature

get poseFollowRoot(): number

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

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:891

Parameters
value

number

Returns

void


poseFollowTip

Get Signature

get poseFollowTip(): number

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

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:902

Parameters
value

number

Returns

void


poseFollowExponent

Get Signature

get poseFollowExponent(): number

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

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:913

Parameters
value

number

Returns

void


maxPoseOffsetRoot

Get Signature

get maxPoseOffsetRoot(): number

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

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:924

Parameters
value

number

Returns

void


maxPoseOffsetTip

Get Signature

get maxPoseOffsetTip(): number

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

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:935

Parameters
value

number

Returns

void


colliders

Get Signature

get colliders(): SpringCollider[]

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

Gets all colliders

Returns

SpringCollider[]

Methods

update()

update(deltaTime): void

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

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:682

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:749

Resets the simulation to initial state

Returns

void


addCollider()

addCollider(collider): void

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

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:952

Removes a collider from the system

Parameters

collider

SpringCollider

Returns

boolean


clearColliders()

clearColliders(): void

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

Clears all colliders

Returns

void

Released under the MIT License.