本文へ移動

Meikyuu迷宮

シード付きの迷路と矢印パズルを作り、番号付きの問題を進め、平面や立体表面で遊べます。

「迷宮」は迷路のように入り組んだ場所を表す言葉です。 名前について(英語)

目次

リファレンス · SVGの盤

doorPlace関数

リファレンスの説明と例は英語です。見出しと目次は日本語です。

Where a door is: the middle of its gap in the wall, and the way out through it as a unit vector.

インポート

import { doorPlace } from "@johnmorrisdotca/meikyuu/draw";

定義

function doorPlace(grid: Grid, door: Door): { x: number; y: number; dx: number; dy: number; }

引数

名前型説明
gridGrid

The valid native flat or surface cell graph.

doorDoor

The cell and boundary side of an entrance or exit.

戻り値

{ x: number; y: number; dx: number; dy: number; }

Where a door is: the middle of its gap in the wall, and the way out through it as a unit vector.

例

import type { MazeRecipe } from "@johnmorrisdotca/meikyuu";
import { boundaryCells, buildMaze } from "@johnmorrisdotca/meikyuu";
import { doorPlace } from "@johnmorrisdotca/meikyuu/draw";

const recipe: MazeRecipe = {shape:"square",w:5,h:5,algorithm:"backtracker",mode:"to-goal",seed:42};
const maze = buildMaze(recipe);
const grid = maze.grid;
const cell = boundaryCells(grid)[0];
const door = {cell,side:grid.sides[cell].findIndex(side=>side.to<0)};
console.log(doorPlace(grid,door));
{ x: 0.5, y: 0, dx: 0, dy: -1 }

出力(このページを作ったときに実行した結果)

ソースを見るGitHub で編集@johnmorrisdotca/meikyuu 3.2.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。