Skip to content

@orillusion/physics


Class: HingeConstraint

Defined in: packages/physics/constraint/HingeConstraint.ts:9

Hinge constraint.

Extends

Constructors

Constructor

new HingeConstraint(): HingeConstraint

Returns

HingeConstraint

Inherited from

ConstraintBase<Ammo.btHingeConstraint>.constructor

Properties

object3D

object3D: Object3D = null

Defined in: src/components/ComponentBase.ts:29

owner object3D

Inherited from

ConstraintBase.object3D


isDestroyed

isDestroyed: boolean = false

Defined in: src/components/ComponentBase.ts:77

Inherited from

ConstraintBase.isDestroyed


pivotSelf

pivotSelf: Vector3

Defined in: packages/physics/constraint/ConstraintBase.ts:19

The pivot point for the self body FrameInA Origin

Inherited from

ConstraintBase.pivotSelf


pivotTarget

pivotTarget: Vector3

Defined in: packages/physics/constraint/ConstraintBase.ts:24

The pivot point for the target body FrameInB Origin

Inherited from

ConstraintBase.pivotTarget


rotationSelf

rotationSelf: Quaternion

Defined in: packages/physics/constraint/ConstraintBase.ts:29

The rotation for the self body FrameInA Rotation

Inherited from

ConstraintBase.rotationSelf


rotationTarget

rotationTarget: Quaternion

Defined in: packages/physics/constraint/ConstraintBase.ts:34

The rotation for the target body FrameInB Rotation

Inherited from

ConstraintBase.rotationTarget


disableCollisionsBetweenLinkedBodies

disableCollisionsBetweenLinkedBodies: boolean = true

Defined in: packages/physics/constraint/ConstraintBase.ts:36

Inherited from

ConstraintBase.disableCollisionsBetweenLinkedBodies


axisSelf

axisSelf: Vector3 = Vector3.UP

Defined in: packages/physics/constraint/HingeConstraint.ts:14

Hinge axis direction on this rigid body. Default Vector3.UP


axisTarget

axisTarget: Vector3 = Vector3.UP

Defined in: packages/physics/constraint/HingeConstraint.ts:19

Hinge axis direction on the target rigid body. Default Vector3.UP


useReferenceFrameA

useReferenceFrameA: boolean = true

Defined in: packages/physics/constraint/HingeConstraint.ts:24

Whether to use this rigid body's reference frame. Default true


useTwoBodiesTransformOverload

useTwoBodiesTransformOverload: boolean = false

Defined in: packages/physics/constraint/HingeConstraint.ts:30

Whether to use the two-bodies-transform overload. If true, the transforms of both rigid bodies are used as the constraint's reference frames. Default false

Accessors

visibleLayer

Get Signature

get visibleLayer(): number

Defined in: src/components/ComponentBase.ts:46

Composition-layer membership bitmask. The pass / camera / collector filters via

(component.visibleLayer & pass.layerMask & camera.cullingMask) !== 0

Defaults to VisibleLayer.Default (bit 0) so a fresh subclass is visible to passes whose layerMask is VisibleLayer.All (which includes bit 0). Application code can assign project-specific bits (1..31) to organise the scene into composition layers.

Returns

number

Set Signature

set visibleLayer(value): void

Defined in: src/components/ComponentBase.ts:50

Parameters
value

number

Returns

void

Inherited from

ConstraintBase.visibleLayer


eventDispatcher

Get Signature

get eventDispatcher(): CEventDispatcher

Defined in: src/components/ComponentBase.ts:63

Returns

CEventDispatcher

Set Signature

set eventDispatcher(value): void

Defined in: src/components/ComponentBase.ts:68

Parameters
value

CEventDispatcher

Returns

void

Inherited from

ConstraintBase.eventDispatcher


isStart

Get Signature

get isStart(): boolean

Defined in: src/components/ComponentBase.ts:79

Returns

boolean

Inherited from

ConstraintBase.isStart


transform

Get Signature

get transform(): Transform

Defined in: src/components/ComponentBase.ts:89

Return the Transform component attached to the Object3D. Null before the component is attached — addComponent assigns object3D only after construction — so constructor-time callers can probe safely via this.transform?..

Returns

Transform

Inherited from

ConstraintBase.transform


enable

Get Signature

get enable(): boolean

Defined in: src/components/ComponentBase.ts:113

Enable/disable components. The enabled components can be updated, while the disabled components cannot be updated.

Returns

boolean

Set Signature

set enable(value): void

Defined in: src/components/ComponentBase.ts:96

Enable/disable components. The enabled components can be updated, while the disabled components cannot be updated.

Parameters
value

boolean

Returns

void

Inherited from

ConstraintBase.enable


breakingThreshold

Get Signature

get breakingThreshold(): number

Defined in: packages/physics/constraint/ConstraintBase.ts:41

Breaking impulse threshold. The larger the value, the harder the constraint is to break.

Returns

number

Set Signature

set breakingThreshold(value): void

Defined in: packages/physics/constraint/ConstraintBase.ts:45

Parameters
value

number

Returns

void

Inherited from

ConstraintBase.breakingThreshold


constraint

Get Signature

get constraint(): T

Defined in: packages/physics/constraint/ConstraintBase.ts:87

Get the constraint instance

Returns

T

Inherited from

ConstraintBase.constraint


targetRigidbody

Get Signature

get targetRigidbody(): Rigidbody

Defined in: packages/physics/constraint/ConstraintBase.ts:119

Target rigid body component

Returns

Rigidbody

Set Signature

set targetRigidbody(value): void

Defined in: packages/physics/constraint/ConstraintBase.ts:123

Parameters
value

Rigidbody

Returns

void

Inherited from

ConstraintBase.targetRigidbody


limitInfo

Get Signature

get limitInfo(): [number, number, number, number, number?]

Defined in: packages/physics/constraint/HingeConstraint.ts:38

Get the current limit parameters.

Returns

[number, number, number, number, number?]


motorConfigInfo

Get Signature

get motorConfigInfo(): [boolean, number, number]

Defined in: packages/physics/constraint/HingeConstraint.ts:42

Get the current motor configuration parameters.

Returns

[boolean, number, number]

Methods

init()

init(param?): void

Defined in: src/components/ComponentBase.ts:161

Parameters

param?

any

Returns

void

Inherited from

ConstraintBase.init


stop()

stop(): void

Defined in: src/components/ComponentBase.ts:163

Returns

void

Inherited from

ConstraintBase.stop


onEnable()?

optional onEnable(view?): any

Defined in: src/components/ComponentBase.ts:164

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onEnable


onDisable()?

optional onDisable(view?): any

Defined in: src/components/ComponentBase.ts:165

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onDisable


onUpdate()?

optional onUpdate(view?): any

Defined in: src/components/ComponentBase.ts:166

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onUpdate


onLateUpdate()?

optional onLateUpdate(view?): any

Defined in: src/components/ComponentBase.ts:167

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onLateUpdate


onBeforeUpdate()?

optional onBeforeUpdate(view?): any

Defined in: src/components/ComponentBase.ts:168

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onBeforeUpdate


onCompute()?

optional onCompute(view?, command?): any

Defined in: src/components/ComponentBase.ts:169

Parameters

view?

View3D

command?

GPUCommandEncoder

Returns

any

Inherited from

ConstraintBase.onCompute


onGraphic()?

optional onGraphic(view?): any

Defined in: src/components/ComponentBase.ts:170

Parameters

view?

View3D

Returns

any

Inherited from

ConstraintBase.onGraphic


onParentChange()?

optional onParentChange(lastParent?, currentParent?): any

Defined in: src/components/ComponentBase.ts:171

Parameters

lastParent?

Object3D

currentParent?

Object3D

Returns

any

Inherited from

ConstraintBase.onParentChange


onAddChild()?

optional onAddChild(child): any

Defined in: src/components/ComponentBase.ts:172

Parameters

child

Object3D

Returns

any

Inherited from

ConstraintBase.onAddChild


onRemoveChild()?

optional onRemoveChild(child): any

Defined in: src/components/ComponentBase.ts:173

Parameters

child

Object3D

Returns

any

Inherited from

ConstraintBase.onRemoveChild


cloneTo()

cloneTo(obj): void

Defined in: src/components/ComponentBase.ts:180

clone component data to target object3D

Parameters

obj

Object3D

target object3D

Returns

void

Inherited from

ConstraintBase.cloneTo


copyComponent()

copyComponent(from): this

Defined in: src/components/ComponentBase.ts:182

Parameters

from

this

Returns

this

Inherited from

ConstraintBase.copyComponent


beforeDestroy()

beforeDestroy(force?): void

Defined in: src/components/ComponentBase.ts:249

before release this component, object refrences are not be set null now.

Parameters

force?

boolean

Returns

void

Inherited from

ConstraintBase.beforeDestroy


start()

start(): Promise<void>

Defined in: packages/physics/constraint/ConstraintBase.ts:50

Returns

Promise<void>

Inherited from

ConstraintBase.start


wait()

wait(): Promise<btHingeConstraint>

Defined in: packages/physics/constraint/ConstraintBase.ts:97

Asynchronously retrieve the fully initialized constraint instance

Returns

Promise<btHingeConstraint>

Inherited from

ConstraintBase.wait


resetConstraint()

resetConstraint(): Promise<btHingeConstraint>

Defined in: packages/physics/constraint/ConstraintBase.ts:105

Reset the constraint: destroy the current constraint instance, recreate it, and return the new constraint instance

Returns

Promise<btHingeConstraint>

Inherited from

ConstraintBase.resetConstraint


destroy()

destroy(force?): void

Defined in: packages/physics/constraint/ConstraintBase.ts:127

release this component

Parameters

force?

boolean

Returns

void

Inherited from

ConstraintBase.destroy


setLimit()

setLimit(low, high, softness, biasFactor, relaxationFactor?): void

Defined in: packages/physics/constraint/HingeConstraint.ts:52

Set the rotation limits of the hinge constraint.

Parameters

low

number

The minimum hinge angle (lower limit).

high

number

The maximum hinge angle (upper limit).

softness

number

Softness coefficient indicating how soft the limit is. In the range 0 to 1; 1 means fully rigid.

biasFactor

number

Bias factor controlling the strength of the limit's restoring force. Typically in the range 0 to 1.

relaxationFactor?

number

(Optional) Relaxation factor controlling how quickly the limit recovers. Larger values mean faster recovery.

Returns

void


enableAngularMotor()

enableAngularMotor(enableMotor, targetVelocity, maxMotorImpulse): void

Defined in: packages/physics/constraint/HingeConstraint.ts:63

Enable or disable the angular motor.

Parameters

enableMotor

boolean

Whether to enable the motor.

targetVelocity

number

The motor's target velocity.

maxMotorImpulse

number

The motor's maximum impulse.

Returns

void