/** * @author Yannick Deubel (https://github.com/yandeu) * @copyright Copyright (c) 2021 Yannick Deubel; Project Url: https://github.com/enable3d/enable3d * @license {@link https://github.com/enable3d/enable3d/blob/master/LICENSE|LGPL-3.0} */ import { Body, Engine, Render, Runner } from 'matter-js'; import { SimpleSprite } from '../simpleSprite.js'; type Circle = { x: number; y: number; radius: number; }; type Polygon = { x: number; y: number; sides: number; radius: number; }; interface Fixtures { label: string; isSensor: boolean; circle?: Circle; polygon?: Polygon; vertices?: Matter.Vector[][]; } export declare class Physics { width: number; height: number; engine: Engine; world: Matter.World; runner: Runner; render: Render; _objects: Map; destroy(): void; parsePhysics(file: string): { [key: string]: Fixtures[]; }; addBodyFromFixtures(x: number, y: number, fixtures: Fixtures[]): Body; fromVertices_Fixed(x: number, y: number, vertexSets: Matter.Vector[][], options?: Matter.IBodyDefinition): Body; private fromVertices; setBounds(x?: number, y?: number, width?: number, height?: number, depth?: number): void; private rectangle; private circle; private existing; private calcBodyOffset; private _addBodyToSprite; private _addBody; get add(): { body: (body: Matter.Composite | Matter.Body | Matter.Body[] | Matter.Composite[] | Matter.Constraint | Matter.Constraint[] | Matter.MouseConstraint) => void; bodyToSprite: (sprite: SimpleSprite) => void; fromVertices: (x: number, y: number, vertexSets: Matter.Vector[][], options?: Matter.IBodyDefinition) => Body; circle: (x: number, y: number, radius: number, options?: Matter.IBodyDefinition) => Body; existing: (sprite: SimpleSprite) => void; rectangle: (x: number, y: number, width: number, height: number, options?: Matter.IBodyDefinition) => Body; }; adjustDebugColor(body: Body): void; update(): void; constructor(debug?: boolean); } export {}; //# sourceMappingURL=physics.d.ts.map