@awayjs/graphics
Version:
AwayJS graphics classes
59 lines • 1.47 kB
TypeScript
interface IOptions {
windingRule?: number;
elementType?: number;
polySize?: number;
vertexSize?: 2 | 3;
contours: Array<Array<number>>;
strict?: boolean;
debug?: boolean;
}
export interface IResult {
vertices: ArrayLike<number>;
vertexIndices: ArrayLike<number>;
vertexCount: number;
elements: ArrayLike<number>;
elementCount: number;
mesh: any;
}
export interface ITess2 {
tesselate({ windingRule, elementType, polySize, vertexSize, contours, strict, debug, }: IOptions): IResult | undefined;
}
declare const enum WINDING {
ABS_GEQ_TWO = 4,
NEGATIVE = 3,
NONZERO = 1,
ODD = 0,
POSITIVE = 2
}
declare const enum ELEMENT {
BOUNDARY_CONTOURS = 2,
CONNECTED_POLYGONS = 1,
POLYGONS = 0
}
export interface TesselatorTaskInput {
id: number;
contours: Float32Array[];
polySize: 2 | 3;
vertexSize: 2;
windingRule: WINDING;
elementType: ELEMENT;
scaleRatio: number;
}
export interface TesselatorTaskError {
status: 'error';
reason: string;
id: number;
}
export interface TesselatorTaskResult {
executionTime: number;
status: 'done';
id: number;
buffer?: Float32Array;
}
export interface TesselatorTaskReady {
status: 'ready';
}
export type TesselatorMessage = TesselatorTaskResult | TesselatorTaskError | TesselatorTaskReady;
export declare const WORKER_BODY: () => void;
export {};
//# sourceMappingURL=WorkerTesselatorBody.d.ts.map