1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-17 22:28:16 +01:00
dotSCAD/docs/lib3x-mz_hamiltonian.md

31 lines
912 B
Markdown
Raw Normal View History

2020-12-24 17:11:09 +08:00
# mz_hamiltonian
Creates a hamiltonian path from a maze. The path is the result of maze traversal using [Wall follower](https://en.wikipedia.org/wiki/Maze_solving_algorithm#Wall_follower).
**Since:** 2.5
## Parameters
- `rows` : The rows of a maze.
- `columns` : The columns of a maze.
- `start` : The start point to travel the maze. Default to `[0, 0]`.
- `seed` : The maze is traveling randomly. Use `seed` to initialize the pseudorandom number generator.
## Examples
use <maze/mz_hamiltonian.scad>;
2021-12-04 10:57:29 +08:00
use <polyline_join.scad>;
2020-12-24 17:11:09 +08:00
rows = 5;
columns = 10;
path = mz_hamiltonian(rows, columns, [0, 0]);
2021-12-04 10:57:29 +08:00
polyline_join(path)
circle(.25);
2020-12-24 17:11:09 +08:00
2021-02-24 21:09:54 +08:00
![mz_hamiltonian](images/lib3x-mz_hamiltonian-1.JPG)
2020-12-24 17:11:09 +08:00
The [senbon_torii](https://github.com/JustinSDK/dotSCAD/blob/master/examples/maze/senbon_torii.scad) is based on `mz_hamiltonian`.
2021-02-24 21:09:54 +08:00
![mz_hamiltonian](images/lib3x-mz_hamiltonian-2.JPG)