From 96ab55b0caa109dcef3dd5b6b7a00adecbc2efc8 Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Tue, 18 Feb 2020 20:43:06 +0800 Subject: [PATCH] refactor --- examples/maze/regular_polygon_maze.scad | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/examples/maze/regular_polygon_maze.scad b/examples/maze/regular_polygon_maze.scad index fd278799..14f5ed80 100644 --- a/examples/maze/regular_polygon_maze.scad +++ b/examples/maze/regular_polygon_maze.scad @@ -1,6 +1,7 @@ use ; use ; use ; +use ; // only for creating a small maze @@ -36,20 +37,14 @@ module regular_polygon_to_polygon_wall(radius, length, angle, thickness, sides) } module regular_polygon_maze(radius, cblocks, levels, thickness = 1, sides) { - // NO_WALL = 0; - // UPPER_WALL = 1; - // RIGHT_WALL = 2; - // UPPER_RIGHT_WALL = 3; + function no_wall(block) = get_wall_type(block) == "NO_WALL"; + function upper_wall(block) = get_wall_type(block) == "UPPER_WALL"; + function right_wall(block) = get_wall_type(block) == "RIGHT_WALL"; + function upper_right_wall(block) = get_wall_type(block) == "UPPER_RIGHT_WALL"; - function no_wall(block) = get_wall_type(block) == 0; - function upper_wall(block) = get_wall_type(block) == 1; - function right_wall(block) = get_wall_type(block) == 2; - function upper_right_wall(block) = get_wall_type(block) == 3; - - function block(x, y, wall_type, visited) = [x, y, wall_type, visited]; - function get_x(block) = block[0]; - function get_y(block) = block[1]; - function get_wall_type(block) = block[2]; + function get_x(block) = mz_get(block, "x"); + function get_y(block) = mz_get(block, "y"); + function get_wall_type(block) = mz_get(block, "w"); arc_angle = 360 / cblocks; r = radius / (levels + 1);