diff --git a/index.html b/index.html index 85e2fca..dbf018b 100644 --- a/index.html +++ b/index.html @@ -41,6 +41,8 @@ } function rerun(){ + if (!document.getElementById("reuseMaze").checked) + createNewMaze(document.getElementById("cellWidthInput").value); algo = {}; maze.resetMazeState(); maze.updateMazeDisplay(); @@ -65,7 +67,7 @@

-
+
diff --git a/sketch.js b/sketch.js index d60c75b..d549621 100644 --- a/sketch.js +++ b/sketch.js @@ -1,4 +1,3 @@ -var cellWidth = 50; var frontier = []; var explored = []; var currentNode = {}; @@ -6,10 +5,16 @@ var maze = {}; var algo = {}; function setup() { - var canvas = createCanvas(500, 500); - canvas.parent('sketch-holder'); - maze = new Maze(width, height, cellWidth, "Depth"); - frameRate(30); + var canvas = createCanvas(500, 500); + canvas.parent('sketch-holder'); + + createNewMaze(document.getElementById("cellWidthInput").value); + + frameRate(Number(document.getElementById("genFrameRate").value)); +} + +function createNewMaze(cellWidth){ + maze = new Maze(width, height, Number(cellWidth)); } function draw() { @@ -24,17 +29,17 @@ function draw() { maze.resetMazeState(); //maze.updateMazeDisplay(); let selectedAlgo = document.getElementById("searchAlgo").value; + let solvingFramerate = document.getElementById("solvingFrameRate").value; if(selectedAlgo == "depthFirst") algo = new DepthFirstSolver(maze.grid[0], maze.grid[maze.index(7, 7)]); else if(selectedAlgo == "breadthFirst") algo = new BreadthFirstSolver(maze.grid[0], maze.grid[maze.index(7,7)]); //else if(selectedAlgo == "a*") - + print("Maze generation done"); - frameRate(10); + frameRate(Number(solvingFramerate)); } else if (maze.mazeGenDone && algo.frontier.length > 0){ - //algo.breadthFirstNextCell(maze); algo.solve(maze); } else{