Files
soma-solver/src/solver/main.ts
Daniel Ledda e7b8ae6120 updates
2021-06-02 08:50:52 +02:00

13 lines
481 B
TypeScript

import SomaSolver from "./SomaSolver";
import VoxelSpace from "./VoxelSpace";
type SolveStartMessageData = {polycubes: bigint[], dims: number};
self.addEventListener('message', (event) => {
const {polycubes, dims} = event.data as SolveStartMessageData;
const solver = new SomaSolver(event.data.dims);
solver.solve(polycubes.map((cubeRep, i) => new VoxelSpace(i, [dims, dims, dims], cubeRep)));
(self as unknown as Worker).postMessage(solver.getSolutions());
});