Skip to content

@ue-too/dynamics / index / Fan

Class: Fan ​

Defined in: crescent-fan.ts:170

Fan-shaped rigid body (arc plus wedge toward center). SAT logic matches Python Fan.

Extends ​

Constructors ​

Constructor ​

new Fan(center, radius, angleSpan, orientationAngle, mass, isStatic, frictionEnabled): Fan

Defined in: crescent-fan.ts:176

Parameters ​

center ​

Point = ...

radius ​

number

angleSpan ​

number

orientationAngle ​

number = 0

mass ​

number = 500

isStatic ​

boolean = true

frictionEnabled ​

boolean = false

Returns ​

Fan

Overrides ​

BaseRigidBody.constructor

Properties ​

_angularVelocity ​

protected _angularVelocity: number

Defined in: rigidbody.ts:74

Inherited from ​

BaseRigidBody._angularVelocity


_center ​

protected _center: Point

Defined in: rigidbody.ts:71

Inherited from ​

BaseRigidBody._center


_linearVelocity ​

protected _linearVelocity: Point

Defined in: rigidbody.ts:73

Inherited from ​

BaseRigidBody._linearVelocity


_mass ​

protected _mass: number = 50

Defined in: rigidbody.ts:72

Inherited from ​

BaseRigidBody._mass


_orientationAngle ​

protected _orientationAngle: number = 0

Defined in: rigidbody.ts:75

Inherited from ​

BaseRigidBody._orientationAngle


_staticFrictionCoeff ​

protected _staticFrictionCoeff: number = 0.3

Defined in: rigidbody.ts:79

Inherited from ​

BaseRigidBody._staticFrictionCoeff


angularDampingFactor ​

protected angularDampingFactor: number = 0.005

Defined in: rigidbody.ts:83

Inherited from ​

BaseRigidBody.angularDampingFactor


collisionFilter ​

collisionFilter: CollisionFilter

Defined in: rigidbody.ts:86

Collision filtering configuration

Inherited from ​

BaseRigidBody.collisionFilter


dynamicFrictionCoeff ​

protected dynamicFrictionCoeff: number = 0.3

Defined in: rigidbody.ts:80

Inherited from ​

BaseRigidBody.dynamicFrictionCoeff


force ​

protected force: Point

Defined in: rigidbody.ts:77

Inherited from ​

BaseRigidBody.force


frictionEnabled ​

protected frictionEnabled: boolean = false

Defined in: rigidbody.ts:81

Inherited from ​

BaseRigidBody.frictionEnabled


isMovingStaticBody ​

protected isMovingStaticBody: boolean = false

Defined in: rigidbody.ts:82

Inherited from ​

BaseRigidBody.isMovingStaticBody


isSleeping ​

isSleeping: boolean = false

Defined in: rigidbody.ts:89

Inherited from ​

BaseRigidBody.isSleeping


isStaticBody ​

protected isStaticBody: boolean = false

Defined in: rigidbody.ts:78

Inherited from ​

BaseRigidBody.isStaticBody


linearAcceleartion ​

protected linearAcceleartion: Point

Defined in: rigidbody.ts:76

Inherited from ​

BaseRigidBody.linearAcceleartion


sleepThreshold ​

sleepThreshold: number = 0.01

Defined in: rigidbody.ts:90

Inherited from ​

BaseRigidBody.sleepThreshold


sleepTime ​

sleepTime: number = 0.5

Defined in: rigidbody.ts:91

Inherited from ​

BaseRigidBody.sleepTime


timeAtRest ​

timeAtRest: number = 0

Defined in: rigidbody.ts:92

Inherited from ​

BaseRigidBody.timeAtRest

Accessors ​

AABB ​

Get Signature ​

get AABB(): object

Defined in: crescent-fan.ts:281

Axis-Aligned Bounding Box for broad phase collision

Returns ​

object

max ​

max: Point

min ​

min: Point

Axis-Aligned Bounding Box for broad phase collision

Overrides ​

BaseRigidBody.AABB


angularVelocity ​

Get Signature ​

get angularVelocity(): number

Defined in: rigidbody.ts:130

Angular velocity (radians/second)

Returns ​

number

Set Signature ​

set angularVelocity(angularVelocity): void

Defined in: rigidbody.ts:134

Angular velocity (radians/second)

Parameters ​
angularVelocity ​

number

Returns ​

void

Angular velocity (radians/second)

Inherited from ​

BaseRigidBody.angularVelocity


center ​

Get Signature ​

get center(): Point

Defined in: rigidbody.ts:290

Center position in world coordinates

Returns ​

Point

Set Signature ​

set center(dest): void

Defined in: rigidbody.ts:294

Center position in world coordinates

Parameters ​
dest ​

Point

Returns ​

void

Center position in world coordinates

Inherited from ​

BaseRigidBody.center


linearVelocity ​

Get Signature ​

get linearVelocity(): Point

Defined in: rigidbody.ts:298

Linear velocity (pixels/second)

Returns ​

Point

Set Signature ​

set linearVelocity(dest): void

Defined in: rigidbody.ts:302

Linear velocity (pixels/second)

Parameters ​
dest ​

Point

Returns ​

void

Linear velocity (pixels/second)

Inherited from ​

BaseRigidBody.linearVelocity


mass ​

Get Signature ​

get mass(): number

Defined in: rigidbody.ts:306

Mass in arbitrary units (affects force response)

Returns ​

number

Mass in arbitrary units (affects force response)

Inherited from ​

BaseRigidBody.mass


momentOfInertia ​

Get Signature ​

get momentOfInertia(): number

Defined in: crescent-fan.ts:222

Moment of inertia (rotational mass)

Returns ​

number

Moment of inertia (rotational mass)

Overrides ​

BaseRigidBody.momentOfInertia


orientationAngle ​

Get Signature ​

get orientationAngle(): number

Defined in: rigidbody.ts:138

Rotation angle in radians

Returns ​

number

Rotation angle in radians

Inherited from ​

BaseRigidBody.orientationAngle


staticFrictionCoeff ​

Get Signature ​

get staticFrictionCoeff(): number

Defined in: rigidbody.ts:310

Static friction coefficient (0-1)

Returns ​

number

Set Signature ​

set staticFrictionCoeff(coeff): void

Defined in: rigidbody.ts:314

Static friction coefficient (0-1)

Parameters ​
coeff ​

number

Returns ​

void

Static friction coefficient (0-1)

Inherited from ​

BaseRigidBody.staticFrictionCoeff

Methods ​

applyForce() ​

applyForce(force): void

Defined in: rigidbody.ts:162

Parameters ​

force ​

Point

Returns ​

void

Inherited from ​

BaseRigidBody.applyForce


applyForceInOrientation() ​

applyForceInOrientation(force): void

Defined in: rigidbody.ts:170

Parameters ​

force ​

number | Point

Returns ​

void

Inherited from ​

BaseRigidBody.applyForceInOrientation


getAdjacentFaces() ​

getAdjacentFaces(_collisionNormal): object[]

Defined in: crescent-fan.ts:347

Parameters ​

_collisionNormal ​

Point

Returns ​

object[]

Overrides ​

BaseRigidBody.getAdjacentFaces


getCenter() ​

getCenter(): Point

Defined in: rigidbody.ts:122

Returns ​

Point

Inherited from ​

BaseRigidBody.getCenter


getCollisionAxes() ​

getCollisionAxes(relativeBody): Point[]

Defined in: crescent-fan.ts:263

Parameters ​

relativeBody ​

RigidBody

Returns ​

Point[]

Overrides ​

BaseRigidBody.getCollisionAxes


getMinMaxProjection() ​

getMinMaxProjection(unitvector): object

Defined in: crescent-fan.ts:226

Parameters ​

unitvector ​

Point

Returns ​

object

max ​

max: number

min ​

min: number

Overrides ​

BaseRigidBody.getMinMaxProjection


getNormalOfSignificantFace() ​

getNormalOfSignificantFace(collisionNormal): Point

Defined in: crescent-fan.ts:343

Parameters ​

collisionNormal ​

Point

Returns ​

Point

Overrides ​

BaseRigidBody.getNormalOfSignificantFace


getOrientationAngle() ​

getOrientationAngle(): number

Defined in: rigidbody.ts:126

Returns ​

number

Inherited from ​

BaseRigidBody.getOrientationAngle


getSignificantVertices() ​

getSignificantVertices(collisionNormal): Point[]

Defined in: crescent-fan.ts:339

Parameters ​

collisionNormal ​

Point

Returns ​

Point[]

Overrides ​

BaseRigidBody.getSignificantVertices


isMovingStatic() ​

isMovingStatic(): boolean

Defined in: rigidbody.ts:146

Returns ​

boolean

Inherited from ​

BaseRigidBody.isMovingStatic


isStatic() ​

isStatic(): boolean

Defined in: rigidbody.ts:142

Returns ​

boolean

Inherited from ​

BaseRigidBody.isStatic


move() ​

move(delta): void

Defined in: crescent-fan.ts:217

Parameters ​

delta ​

Point

Returns ​

void

Overrides ​

BaseRigidBody.move


rotateRadians() ​

rotateRadians(angle): void

Defined in: rigidbody.ts:118

Parameters ​

angle ​

number

Returns ​

void

Inherited from ​

BaseRigidBody.rotateRadians


setLinearVelocity() ​

setLinearVelocity(linearVelocity): void

Defined in: rigidbody.ts:150

Parameters ​

linearVelocity ​

Point

Returns ​

void

Inherited from ​

BaseRigidBody.setLinearVelocity


setMovingStatic() ​

setMovingStatic(movingStatic): void

Defined in: rigidbody.ts:154

Parameters ​

movingStatic ​

boolean

Returns ​

void

Inherited from ​

BaseRigidBody.setMovingStatic


setOrientationAngle() ​

setOrientationAngle(angle): void

Defined in: rigidbody.ts:158

Parameters ​

angle ​

number

Returns ​

void

Inherited from ​

BaseRigidBody.setOrientationAngle


setSleeping() ​

setSleeping(sleeping): void

Defined in: rigidbody.ts:334

Parameters ​

sleeping ​

boolean

Returns ​

void

Inherited from ​

BaseRigidBody.setSleeping


significantVertex() ​

significantVertex(collisionNormal): Point

Defined in: crescent-fan.ts:319

Parameters ​

collisionNormal ​

Point

Returns ​

Point

Overrides ​

BaseRigidBody.significantVertex


step() ​

step(deltaTime): void

Defined in: crescent-fan.ts:208

Parameters ​

deltaTime ​

number

Returns ​

void

Overrides ​

BaseRigidBody.step


updateSleeping() ​

updateSleeping(deltaTime): void

Defined in: rigidbody.ts:345

Parameters ​

deltaTime ​

number

Returns ​

void

Inherited from ​

BaseRigidBody.updateSleeping