本文へ移動

Meikyuu迷宮

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

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

目次

解説

マスのグラフ・表示・立体迷路

グラフの同一性と投影・ポインターを分けます。

平面と立体のグラフ

import {buildSolidMaze,solidSolutionOf,checkSolidAnswer} from "@johnmorrisdotca/meikyuu/3d";
const maze = buildSolidMaze({kind:"cube",n:2,algorithm:"backtracker",seed:42});
console.log(maze.grid.cells,checkSolidAnswer(maze,solidSolutionOf(maze)));
24 true

生成は隣接リストを読み、平面の切り抜きでも立体でも同じ考えです。立体の座標は三成分で、マスは面を越えてつながります。回転や投影は表示を変え、通路は変えません。論理的な経路と設定コードは表示を変えても保たれます。

ポインターと単位

平面では画面のピクセルと論理的な盤の範囲を使います。立体のframeは頂点や中心を投影し、向きと可視性を持ちます。画面の点をマス番号、二次元の点を三次元のベクトルとして渡しません。クォータニオンは正規化した回転と0〜1の割合、角度はラジアンです。縦長のサイズは幅でなく添字、立体の分割nは名前付きサイズと別です。

操作には/3d/playを使い、撤去時に破棄します。立体の使用法、形の設計、描画に詳細があります。

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

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