UNPKG

@pmndrs/cannon-worker-api

Version:
85 lines (84 loc) 5.64 kB
/// <reference types="node" /> import EventEmitter from 'events'; import type { Broadphase, CannonMessageBody, StepProps, Triplet, WorldProps } from './types'; export declare type CannonWorkerProps = Partial<WorldProps> & { size?: number; }; export declare class CannonWorkerAPI extends EventEmitter { get axisIndex(): 0 | 1 | 2; set axisIndex(value: 0 | 1 | 2); get broadphase(): Broadphase; set broadphase(value: Broadphase); get frictionGravity(): Triplet | null; set frictionGravity(value: Triplet | null); get gravity(): Triplet; set gravity(value: Triplet); get iterations(): number; set iterations(value: number); get tolerance(): number; set tolerance(value: number); private buffers; private config; private messageQueue; private worker; constructor({ allowSleep, axisIndex, broadphase, defaultContactMaterial, frictionGravity, gravity, iterations, quatNormalizeFast, quatNormalizeSkip, size, solver, tolerance, }: CannonWorkerProps); addBodies({ props, type, uuid }: CannonMessageBody<'addBodies'>): void; addConstraint({ props: [refA, refB, optns], type, uuid }: CannonMessageBody<'addConstraint'>): void; addContactMaterial({ props, uuid }: CannonMessageBody<'addContactMaterial'>): void; addRay({ props, uuid }: CannonMessageBody<'addRay'>): void; addRaycastVehicle({ props: [chassisBodyUUID, wheelUUIDs, wheelInfos, indexForwardAxis, indexRightAxis, indexUpAxis], uuid, }: CannonMessageBody<'addRaycastVehicle'>): void; addSpring({ props: [refA, refB, optns], uuid }: CannonMessageBody<'addSpring'>): void; applyForce({ props, uuid }: CannonMessageBody<'applyForce'>): void; applyImpulse({ props, uuid }: CannonMessageBody<'applyImpulse'>): void; applyLocalForce({ props, uuid }: CannonMessageBody<'applyLocalForce'>): void; applyLocalImpulse({ props, uuid }: CannonMessageBody<'applyLocalImpulse'>): void; applyRaycastVehicleEngineForce({ props, uuid }: CannonMessageBody<'applyRaycastVehicleEngineForce'>): void; applyTorque({ props, uuid }: CannonMessageBody<'applyTorque'>): void; connect(): void; disableConstraint({ uuid }: CannonMessageBody<'disableConstraint'>): void; disableConstraintMotor({ uuid }: CannonMessageBody<'disableConstraintMotor'>): void; disconnect(): void; enableConstraint({ uuid }: CannonMessageBody<'enableConstraint'>): void; enableConstraintMotor({ uuid }: CannonMessageBody<'enableConstraintMotor'>): void; init(): void; removeBodies({ uuid }: CannonMessageBody<'removeBodies'>): void; removeConstraint({ uuid }: CannonMessageBody<'removeConstraint'>): void; removeContactMaterial({ uuid }: CannonMessageBody<'removeContactMaterial'>): void; removeRay({ uuid }: CannonMessageBody<'removeRay'>): void; removeRaycastVehicle({ uuid }: CannonMessageBody<'removeRaycastVehicle'>): void; removeSpring({ uuid }: CannonMessageBody<'removeSpring'>): void; setAllowSleep({ props, uuid }: CannonMessageBody<'setAllowSleep'>): void; setAngularDamping({ props, uuid }: CannonMessageBody<'setAngularDamping'>): void; setAngularFactor({ props, uuid }: CannonMessageBody<'setAngularFactor'>): void; setAngularVelocity({ props, uuid }: CannonMessageBody<'setAngularVelocity'>): void; setCollisionFilterGroup({ props, uuid }: CannonMessageBody<'setCollisionFilterGroup'>): void; setCollisionFilterMask({ props, uuid }: CannonMessageBody<'setCollisionFilterMask'>): void; setCollisionResponse({ props, uuid }: CannonMessageBody<'setCollisionResponse'>): void; setConstraintMotorMaxForce({ props, uuid }: CannonMessageBody<'setConstraintMotorMaxForce'>): void; setConstraintMotorSpeed({ props, uuid }: CannonMessageBody<'setConstraintMotorSpeed'>): void; setFixedRotation({ props, uuid }: CannonMessageBody<'setFixedRotation'>): void; setIsTrigger({ props, uuid }: CannonMessageBody<'setIsTrigger'>): void; setLinearDamping({ props, uuid }: CannonMessageBody<'setLinearDamping'>): void; setLinearFactor({ props, uuid }: CannonMessageBody<'setLinearFactor'>): void; setMass({ props, uuid }: CannonMessageBody<'setMass'>): void; setMaterial({ props, uuid }: CannonMessageBody<'setMaterial'>): void; setPosition({ props, uuid }: CannonMessageBody<'setPosition'>): void; setQuaternion({ props: [x, y, z, w], uuid }: CannonMessageBody<'setQuaternion'>): void; setRaycastVehicleBrake({ props, uuid }: CannonMessageBody<'setRaycastVehicleBrake'>): void; setRaycastVehicleSteeringValue({ props, uuid }: CannonMessageBody<'setRaycastVehicleSteeringValue'>): void; setRotation({ props, uuid }: CannonMessageBody<'setRotation'>): void; setSleepSpeedLimit({ props, uuid }: CannonMessageBody<'setSleepSpeedLimit'>): void; setSleepTimeLimit({ props, uuid }: CannonMessageBody<'setSleepTimeLimit'>): void; setSpringDamping({ props, uuid }: CannonMessageBody<'setSpringDamping'>): void; setSpringRestLength({ props, uuid }: CannonMessageBody<'setSpringRestLength'>): void; setSpringStiffness({ props, uuid }: CannonMessageBody<'setSpringStiffness'>): void; setUserData({ props, uuid }: CannonMessageBody<'setUserData'>): void; setVelocity({ props, uuid }: CannonMessageBody<'setVelocity'>): void; sleep({ uuid }: CannonMessageBody<'sleep'>): void; step(props: StepProps): void; subscribe({ props: { id, target, type }, uuid }: CannonMessageBody<'subscribe'>): void; terminate(): void; unsubscribe({ props }: CannonMessageBody<'unsubscribe'>): void; wakeUp({ uuid }: CannonMessageBody<'wakeUp'>): void; private postMessage; }