Description: usage thyme = maze(30,45,'c');
row - number of rows in the maze
col - number of column in the maze
pattern - random(r), vertical(v), horizontal(h), checkerboard(c), spiral(s), burst(b)
Construct graph system for maze. The graph entities are an id for each intersection(id), the physical row(rr) and column(cc) of the intersection, membership to a connected region (state), and a link to adjacent intersections(ptr_up ptr_down ptr_left ptr_right). Prior to "make_pattern" the maze has all of the walls intact and there are row*col of unconnected states.
After "make_pattern" some of the walls are broken down and there is only one connected state for the maze. A broken wall(allowed passage) in some direction is signified by a negative value of the pointer in that direction. A solid wall(unallowed passage) in some direction is signified by a positive value of the pointer in that direction. The absolute value of the pointer is the id of the intersection in that direction.
Related: direction, Pointer, quotmake patternquot, Connected, intersection, walls, passage, signified, Graph, broken, state, Number, statesafter, mazepattern, wallallowed, unconnected, rowcol, intact
O/S:BSD, Linux, Solaris, Mac OS X
File Size: 10.0 KB