Reference · Mazes, arrows and mixed boards
carveMazefunction
The open neighbours of every cell, for a perfect maze of the grid made by this algorithm from this stream.
Import it
import { carveMaze } from "@johnmorrisdotca/meikyuu";
Definition
function carveMaze(grid: CellGraph, algorithm: MeikyuuAlgorithm, random: Random): Links
Parameters
| Name | Type | Description |
|---|---|---|
grid | CellGraph | The valid native flat or surface cell graph. |
algorithm | "backtracker" | "hunt" | "growing" | "prim" | "kruskal" | "wilson" | "eller" | The native maze-carving algorithm. |
random | Random | A random source returning values in [0,1). |
Returns
Links
The open neighbours of every cell, for a perfect maze of the grid made by this algorithm from this stream.
Examples
import type { MazeRecipe } from "@johnmorrisdotca/meikyuu";
import { buildMaze, carveMaze, seededRandom } from "@johnmorrisdotca/meikyuu";
const recipe: MazeRecipe = {shape:"square",w:5,h:5,algorithm:"backtracker",mode:"to-goal",seed:42};
const maze = buildMaze(recipe);
const grid = maze.grid;
console.log(carveMaze(grid,"backtracker",seededRandom(42)).length);25What it prints (run when this page was built)