Skip to content

@ue-too/dynamics / index / Polygon

Class: Polygon ​

Defined in: rigidbody.ts:729

Rigid body interface for 2D physics simulation.

Remarks ​

Represents a physical object in the physics world with mass, velocity, rotation, and collision properties. Can be either static (immovable) or dynamic (responds to forces).

Implemented by Circle and Polygon classes.

Extends ​

Constructors ​

Constructor ​

new Polygon(center, vertices, _orientationAngle, mass, isStatic, frictionEnabled): Polygon

Defined in: rigidbody.ts:733

Parameters ​

center ​

Point = ...

vertices ​

Point[]

_orientationAngle ​

number = 0

mass ​

number = 50

isStatic ​

boolean = false

frictionEnabled ​

boolean = true

Returns ​

Polygon

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: rigidbody.ts:810

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: rigidbody.ts:944

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: rigidbody.ts:865

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: rigidbody.ts:785

Parameters ​

relativeBody ​

RigidBody

Returns ​

Point[]

Overrides ​

BaseRigidBody.getCollisionAxes


getMinMaxProjection() ​

getMinMaxProjection(unitvector): object

Defined in: rigidbody.ts:800

Parameters ​

unitvector ​

Point

Returns ​

object

max ​

max: number

min ​

min: number

Overrides ​

BaseRigidBody.getMinMaxProjection


getNormalOfSignificantFace() ​

getNormalOfSignificantFace(collisionNormal): Point

Defined in: rigidbody.ts:859

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: rigidbody.ts:831

Parameters ​

collisionNormal ​

Point

Returns ​

Point[]

Overrides ​

BaseRigidBody.getSignificantVertices


getVerticesAbsCoord() ​

getVerticesAbsCoord(): Point[]

Defined in: rigidbody.ts:776

Returns ​

Point[]


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: rigidbody.ts:112

Parameters ​

delta ​

Point

Returns ​

void

Inherited from ​

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: rigidbody.ts:820

Parameters ​

collisionNormal ​

Point

Returns ​

Point

Overrides ​

BaseRigidBody.significantVertex


step() ​

step(deltaTime): void

Defined in: rigidbody.ts:186

Parameters ​

deltaTime ​

number

Returns ​

void

Inherited from ​

BaseRigidBody.step


updateSleeping() ​

updateSleeping(deltaTime): void

Defined in: rigidbody.ts:345

Parameters ​

deltaTime ​

number

Returns ​

void

Inherited from ​

BaseRigidBody.updateSleeping