Skip to content

@ue-too/dynamics / VisaulCircleBody

Class: VisaulCircleBody

Defined in: rigidbody.ts:359

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.

Implements

Constructors

Constructor

new VisaulCircleBody(center, radius, drawingContext, _orientationAngle, mass, isStatic, frictionEnabled): VisaulCircleBody

Defined in: rigidbody.ts:372

Parameters

center

Point = ...

radius

number

drawingContext

CanvasRenderingContext2D

_orientationAngle

number = 0

mass

number = 50

isStatic

boolean = false

frictionEnabled

boolean = true

Returns

VisaulCircleBody

Properties

collisionFilter

collisionFilter: CollisionFilter

Defined in: rigidbody.ts:364

Collision filtering configuration

Implementation of

RigidBody.collisionFilter


isSleeping

isSleeping: boolean = false

Defined in: rigidbody.ts:367

Implementation of

RigidBody.isSleeping


sleepThreshold

sleepThreshold: number = 0.01

Defined in: rigidbody.ts:368

Implementation of

RigidBody.sleepThreshold


sleepTime

sleepTime: number = 0.5

Defined in: rigidbody.ts:369

Implementation of

RigidBody.sleepTime


timeAtRest

timeAtRest: number = 0

Defined in: rigidbody.ts:370

Implementation of

RigidBody.timeAtRest

Accessors

AABB

Get Signature

get AABB(): object

Defined in: rigidbody.ts:429

Axis-Aligned Bounding Box for broad phase collision

Returns

object

max

max: Point

min

min: Point

Axis-Aligned Bounding Box for broad phase collision

Implementation of

RigidBody.AABB


angularVelocity

Get Signature

get angularVelocity(): number

Defined in: rigidbody.ts:477

Angular velocity (radians/second)

Returns

number

Set Signature

set angularVelocity(angularVelocity): void

Defined in: rigidbody.ts:473

Angular velocity (radians/second)

Parameters
angularVelocity

number

Returns

void

Angular velocity (radians/second)

Implementation of

RigidBody.angularVelocity


center

Get Signature

get center(): Point

Defined in: rigidbody.ts:449

Center position in world coordinates

Returns

Point

Set Signature

set center(dest): void

Defined in: rigidbody.ts:453

Center position in world coordinates

Parameters
dest

Point

Returns

void

Center position in world coordinates

Implementation of

RigidBody.center


linearVelocity

Get Signature

get linearVelocity(): Point

Defined in: rigidbody.ts:457

Linear velocity (pixels/second)

Returns

Point

Set Signature

set linearVelocity(dest): void

Defined in: rigidbody.ts:461

Linear velocity (pixels/second)

Parameters
dest

Point

Returns

void

Linear velocity (pixels/second)

Implementation of

RigidBody.linearVelocity


mass

Get Signature

get mass(): number

Defined in: rigidbody.ts:481

Mass in arbitrary units (affects force response)

Returns

number

Mass in arbitrary units (affects force response)

Implementation of

RigidBody.mass


momentOfInertia

Get Signature

get momentOfInertia(): number

Defined in: rigidbody.ts:504

Moment of inertia (rotational mass)

Returns

number

Moment of inertia (rotational mass)

Implementation of

RigidBody.momentOfInertia


orientationAngle

Get Signature

get orientationAngle(): number

Defined in: rigidbody.ts:465

Rotation angle in radians

Returns

number

Rotation angle in radians

Implementation of

RigidBody.orientationAngle


staticFrictionCoeff

Get Signature

get staticFrictionCoeff(): number

Defined in: rigidbody.ts:489

Static friction coefficient (0-1)

Returns

number

Set Signature

set staticFrictionCoeff(coeff): void

Defined in: rigidbody.ts:493

Static friction coefficient (0-1)

Parameters
coeff

number

Returns

void

Static friction coefficient (0-1)

Implementation of

RigidBody.staticFrictionCoeff

Methods

applyForce()

applyForce(force): void

Defined in: rigidbody.ts:425

Parameters

force

Point

Returns

void

Implementation of

RigidBody.applyForce


applyForceInOrientation()

applyForceInOrientation(force): void

Defined in: rigidbody.ts:437

Parameters

force

Point

Returns

void

Implementation of

RigidBody.applyForceInOrientation


draw()

draw(ctx): void

Defined in: rigidbody.ts:392

Parameters

ctx

CanvasRenderingContext2D

Returns

void

Implementation of

VisualComponent.draw


getAdjacentFaces()

getAdjacentFaces(collisionNormal): object[]

Defined in: rigidbody.ts:497

Parameters

collisionNormal

Point

Returns

object[]

Implementation of

RigidBody.getAdjacentFaces


getCollisionAxes()

getCollisionAxes(relativeBody): Point[]

Defined in: rigidbody.ts:421

Parameters

relativeBody

RigidBody

Returns

Point[]

Implementation of

RigidBody.getCollisionAxes


getMass()

getMass(): number

Defined in: rigidbody.ts:433

Returns

number


getMinMaxProjection()

getMinMaxProjection(unitvector): object

Defined in: rigidbody.ts:417

Parameters

unitvector

Point

Returns

object

max

max: number

min

min: number

Implementation of

RigidBody.getMinMaxProjection


getNormalOfSignificantFace()

getNormalOfSignificantFace(collisionNormal): Point

Defined in: rigidbody.ts:485

Parameters

collisionNormal

Point

Returns

Point

Implementation of

RigidBody.getNormalOfSignificantFace


getSignificantVertices()

getSignificantVertices(collisionNormal): Point[]

Defined in: rigidbody.ts:445

Parameters

collisionNormal

Point

Returns

Point[]

Implementation of

RigidBody.getSignificantVertices


isMovingStatic()

isMovingStatic(): boolean

Defined in: rigidbody.ts:413

Returns

boolean

Implementation of

RigidBody.isMovingStatic


isStatic()

isStatic(): boolean

Defined in: rigidbody.ts:409

Returns

boolean

Implementation of

RigidBody.isStatic


move()

move(delta): void

Defined in: rigidbody.ts:441

Parameters

delta

Point

Returns

void

Implementation of

RigidBody.move


setSleeping()

setSleeping(sleeping): void

Defined in: rigidbody.ts:509

Parameters

sleeping

boolean

Returns

void

Implementation of

RigidBody.setSleeping


significantVertex()

significantVertex(collisionNormal): Point

Defined in: rigidbody.ts:469

Parameters

collisionNormal

Point

Returns

Point

Implementation of

RigidBody.significantVertex


step()

step(deltaTime): void

Defined in: rigidbody.ts:404

Parameters

deltaTime

number

Returns

void

Implementation of

RigidBody.step


updateSleeping()

updateSleeping(deltaTime): void

Defined in: rigidbody.ts:520

Parameters

deltaTime

number

Returns

void

Implementation of

RigidBody.updateSleeping