您当前的位置: 首页 > 

【03】

暂无认证

  • 2浏览

    0关注

    196博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

js生成随机迷宫

【03】 发布时间:2021-05-30 00:13:53 ,浏览量:2

迷宫说明

1、只有一个出口,一个入口 2、入口到出口路径是相通的且只有一条唯一的路径

生成方式原理

生成矩阵basicMap的时候,先规定路都被墙包围,并且生成一份用来遍历标识的数据visited,在遍历过程中,标识每一次遍历的格子在visited总标识,取当前临近的上下左右四个格子,并且判断坐标没有越界 且 没有被访问过,打通两个路之间的墙,使得两个路联通

通用style与html

    html, body {
        width: 100%;
        height: 100%;
        padding: 0;
        margin: 0;
        text-align: center;
    }

    #map {
        display: inline-block;
        border: 2px solid #6a6f77;
        margin-top: 120px;
    }

    .line {
        height: 30px;
        width: 100%;
    }

    .wall, .road {
        width: 30px;
        height: 30px;
        display: inline-block;
    }

    .wall {
        background: #45494c;
    }

    .road {
        background: #ffffff;
    }

    .cre {
        background: #0366D6;
    }





栈的方式递归生成
const basicMap = [] // 迷宫数据
const visited = [] // 逻辑访问数据
const range = [[-1, 0], [0, 1], [1, 0], [0, -1]] // 偏移量
/**
 * 生成地基,每个可通行的方格都间隔一堵墙
 */
function createBasis(x, y) {
    for (let i = 0; i             
关注
打赏
1657344724
查看更多评论
0.1170s