【まとめ】TypeScriptで迷路 プログラミング X Facebook はてブ Pocket LINE コピー 2021.05.312023.07.07 これまでに書いた記事の中から、「TypeScriptで迷路」というテーマで書いた記事をまとめてみました。 【TypeScript】迷路を出力する通路を「0」、壁を「1」とした2次元配列で迷路を表現して、通路を「 」(半角スペース)、壁を「#」として1行ごとに改行して出力する。 const PATH: number = 0; const WALL: number = 1; const 【TypeScript】壁のない迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって壁のない迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 class Maze { PATH: number; WALL: number; wid 【TypeScript】迷路の外壁を設置する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって外壁を設置する。※迷路の幅と高さは5以上の奇数とする。 class Maze { PATH: number; WALL: number; width: 【TypeScript】迷路の内壁を等間隔に設置する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって上下左右1マス間隔で内壁を設置する。※迷路の幅と高さは5以上の奇数とする。 class Maze { PATH: number; WALL: numbe 【React】棒倒し法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって棒倒し法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 Canvas.tsx import React, { useEffect } from 【React】穴掘り法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって穴掘り法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 Canvas.tsx import React, { useEffect } from 【React】壁伸ばし法で迷路を生成する迷路の幅と高さをそれぞれ width, height として設定し、その数値にしたがって壁伸ばし法で迷路を生成する。※迷路の幅と高さは5以上の奇数とする。 Canvas.tsx import React, { useEffect } fro 【React】迷路のスタートとゴールを設定する迷路のスタートとゴールを座標によって設定し、スタートを「S」、ゴールを「G」として出力する。 Canvas.tsx import React, { useEffect } from 'react'; import p5 【React】迷路の最短経路を出力するスタートからゴールまでの距離を2次元配列で表現して、最短経路の通路を「 」(半角スペース)から「*」に置き換えて出力する。 Canvas.tsx import React, { useEffect } from 'react� 【React】幅優先探索で迷路の最短経路を求める探索していない通路を「-1」として表現してスタートからゴールに到達するまで幅優先探索で迷路を探索し、探索した通路はスタートからの距離に数値を置き換える。 Canvas.tsx import React, { useEffect } from 【React】深さ優先探索で迷路の最短経路を求める探索していない通路を「-1」として表現してスタートからゴールに到達するまで深さ優先探索で迷路を探索し、探索した通路はスタートからの距離に数値を置き換える。 Canvas.tsx import React, { useEffect } fro 【React】迷路のスタートからの距離を出力するスタートからの距離と壁を距離の最大値の桁数に合わせて出力する。 Canvas.tsx import React, { useEffect } from 'react'; import p5 from 'p5&# 【React】Canvasを作成するcreateCanvas関数でスケッチを描画するためのcanvas要素を作成する。 import React, { useEffect } from 'react'; import p5 from 'p5� 【React】四角形を描画するrect関数でCanvasに四角形を描画する。 import React, { useEffect } from 'react'; import p5 from 'p5'; const sketch 【React】直線を描画するline関数でCanvasに直線を描画する。 import React, { useEffect } from 'react'; import p5 from 'p5'; const sketch = 【React】楕円を描画するellipse関数でCanvasに楕円を描画する。 import React, { useEffect } from 'react'; import p5 from 'p5'; const sketc 【React】迷路を描画するCanvasに迷路を描画する。 Canvas.tsx import React, { useEffect } from 'react'; import p5 from 'p5'; import Maz 【React】十字キーから入力を受け取る十字キーから入力を受け取り、迷路を移動できるようにする。 Canvas.tsx import React, { useEffect } from 'react'; import p5 from 'p5' 【React】クリア画面を表示するプレイヤーがゴールに到達したら「Game Clear!!」を出力する。 Canvas.tsx import React, { useEffect } from 'react'; import p5 from ' 【React】オブジェクトを生成するジオメトリとマテリアルから作成したメッシュをシーンに追加する。 App.tsx import React from 'react' import { Canvas } from '@react-three/fi 【React】オブジェクトの位置を変更するpositionやrotationプロパティでオブジェクトの位置を変更する。 App.tsx import React from 'react' import { Canvas } from '@react-t 【React】オブジェクトを複製する同じジオメトリとマテリアルから作成したメッシュをシーンに追加することでオブジェクトを複製する。 App.tsx import React from 'react' import { Canvas } from ' 【React】迷路を生成するCubeとPlaneを用いて、迷路を生成する。 App.tsx import React from 'react'; import { Canvas } from '@react-three/fiber 【React】迷路に合わせて床の大きさを自動で調整する迷路のサイズと Cube の大きさに合わせて迷路の床の大きさを調整する。 App.tsx import React from 'react'; import { Canvas } from '@react-th