the-world-engine
Version:
three.js based, unity like game engine for browser
87 lines (86 loc) • 2.36 kB
TypeScript
export function b2_gjk_reset(): void;
export function b2Distance(output: any, cache: any, input: any): void;
export function b2ShapeCast(output: any, input: any): boolean;
export class b2DistanceProxy {
m_buffer: b2Vec2[];
m_vertices: b2Vec2[];
m_count: number;
m_radius: number;
Copy(other: any): b2DistanceProxy;
Reset(): b2DistanceProxy;
SetShape(shape: any, index: any): void;
SetVerticesRadius(vertices: any, count: any, radius: any): void;
GetSupport(d: any): number;
GetSupportVertex(d: any): b2Vec2;
GetVertexCount(): number;
GetVertex(index: any): b2Vec2;
}
export class b2SimplexCache {
metric: number;
count: number;
indexA: number[];
indexB: number[];
Reset(): b2SimplexCache;
}
export class b2DistanceInput {
proxyA: b2DistanceProxy;
proxyB: b2DistanceProxy;
transformA: b2Transform;
transformB: b2Transform;
useRadii: boolean;
Reset(): b2DistanceInput;
}
export class b2DistanceOutput {
pointA: b2Vec2;
pointB: b2Vec2;
distance: number;
iterations: number;
Reset(): b2DistanceOutput;
}
export class b2ShapeCastInput {
proxyA: b2DistanceProxy;
proxyB: b2DistanceProxy;
transformA: b2Transform;
transformB: b2Transform;
translationB: b2Vec2;
}
export class b2ShapeCastOutput {
point: b2Vec2;
normal: b2Vec2;
lambda: number;
iterations: number;
}
export let b2_gjkCalls: number;
export let b2_gjkIters: number;
export let b2_gjkMaxIters: number;
export class b2SimplexVertex {
wA: b2Vec2;
wB: b2Vec2;
w: b2Vec2;
a: number;
indexA: number;
indexB: number;
Copy(other: any): b2SimplexVertex;
}
export class b2Simplex {
m_v1: b2SimplexVertex;
m_v2: b2SimplexVertex;
m_v3: b2SimplexVertex;
m_vertices: b2SimplexVertex[];
m_count: number;
ReadCache(cache: any, proxyA: any, transformA: any, proxyB: any, transformB: any): void;
WriteCache(cache: any): void;
GetSearchDirection(out: any): any;
GetClosestPoint(out: any): any;
GetWitnessPoints(pA: any, pB: any): void;
GetMetric(): number;
Solve2(): void;
Solve3(): void;
}
export namespace b2Simplex {
const s_e12: b2Vec2;
const s_e13: b2Vec2;
const s_e23: b2Vec2;
}
import { b2Vec2 } from "../common/b2_math.js";
import { b2Transform } from "../common/b2_math.js";