@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
24 lines (23 loc) • 1.13 kB
TypeScript
import { WFCTileSide } from './WFCCommon';
import { Object3D } from 'three';
type TraverseRulesCallback = (id0: string, id1: string, side0: WFCTileSide, side1: WFCTileSide) => void;
type TraverseUnconnectedSidesCallback = (side: WFCTileSide[]) => void;
interface WFCTilesCollectionOptions {
tileAndRuleObjects: Object3D[];
}
export declare class WFCTilesCollection {
private _tiles;
private _tilesById;
private _rulesByTileId;
private _errorTileObject;
private _unresolvedTileObject;
constructor(options: WFCTilesCollectionOptions);
tiles(): Object3D<import("three").Object3DEventMap>[];
tile(tileId: string): Object3D<import("three").Object3DEventMap> | undefined;
errorTile(): Object3D<import("three").Object3DEventMap> | null;
unresolvedTile(): Object3D<import("three").Object3DEventMap> | null;
traverseRules(id0: string, id1: string, callback: TraverseRulesCallback): void;
traverseUnconnectedSides(id: string, callback: TraverseUnconnectedSidesCallback): void;
allowedTileConfig(id0: string, side0: WFCTileSide, id1: string, side1: WFCTileSide): boolean;
}
export {};