@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
29 lines (28 loc) • 808 B
JavaScript
;
let _nextId = 0;
const SOLVER_ID_KEY = "__wfcSolverId__";
const BUILDER_ID_KEY = "__wfcBuilderId__";
const WFCSolverById = /* @__PURE__ */ new Map();
const WFCBuilderById = /* @__PURE__ */ new Map();
export function registerWFCSolver(solver, object) {
const id = _nextId++;
WFCSolverById.set(id, solver);
object.userData[SOLVER_ID_KEY] = id;
}
export function getWFCSolver(object) {
const id = object.userData[SOLVER_ID_KEY];
if (id != null) {
return WFCSolverById.get(id);
}
}
export function registerWFCBuilder(solver, object) {
const id = _nextId++;
WFCBuilderById.set(id, solver);
object.userData[BUILDER_ID_KEY] = id;
}
export function getWFCBuilder(object) {
const id = object.userData[BUILDER_ID_KEY];
if (id != null) {
return WFCBuilderById.get(id);
}
}