mazegenerator
1.0.0
다양한 모양과 임의 크기의 미로 생성
미로 생성기는 직사각형, 육각형, 벌집형 및 원형 미로를 만들 수 있습니다. 미로 생성은 Kruskal 알고리즘, 깊이 우선 탐색, 너비 우선 탐색, 루프 삭제 무작위 보행 또는 Prim 알고리즘을 사용하여 수행할 수 있습니다. 미로는 svg 또는 png 형식으로 렌더링될 수 있습니다(후자의 경우 gnuplot을 중간 형식으로 사용).
미로 생성기는 gnuplot( 시스템 호출 gnuplot
포함)을 사용하여 png 미로를 렌더링합니다. 따라서 pngcairo
터미널 지원과 함께 gnuplot 5.0+
설치되어 있고 png를 사용하려는 경우 해당 경로에 있는지 확인하십시오.
코드는 C++ 11로 작성되었으므로 이를 빌드하려면 그리 오래되지 않은 C++ 컴파일러가 필요합니다.
cd src; make
Usage: mazegen [--help] [-m <maze type>] [-a <algorithm type>] [-s <size> | -w <width> -h <height>] [-t <output type] [-o <output prefix>] Optional arguments --help Show this message and exit -m Maze type 0: Rectangular (default) 1: Hexagonal (triangular lattice) 2: Honeycomb 3: Circular 4: Circular (triangular lattice) 5: User-defined -a Algorithm type 0: Kruskal's algorithm (default) 1: Depth-first search 2: Breadth-first search 3: Loop-erased random walk 4: Prim's algorithm -s Size (non-rectangular mazes, default: 20) -w,-h Width and height (rectangular maze, default: 20) -t Output type 0: svg output (default) 1: png output using gnuplot (.plt) intermediate -o Prefix for .svg, .plt and .png outputs (default: maze)
원형 미로의 호는 gnuplot의 매개변수 곡선으로 플롯되며 큰 미로의 경우 png를 렌더링하는 데 꽤 오랜 시간이 걸릴 수 있습니다.