From c4e3ebb65adcfa46f35795d27af2f4554b467bba Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Tue, 3 Mar 2020 09:16:26 +0800 Subject: [PATCH] refactor --- src/function_grapher.scad | 69 ++++++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 30 deletions(-) diff --git a/src/function_grapher.scad b/src/function_grapher.scad index 7640492c..7524504b 100644 --- a/src/function_grapher.scad +++ b/src/function_grapher.scad @@ -245,36 +245,45 @@ module function_grapher(points, thickness, style = "FACES", slicing = "SLASH") { if(style == "FACES") { faces(); } else { - if(slicing == "SLASH") { - for(yi = yi_range) { - for(xi = xi_range) { - tri_to_graph([ - points[yi][xi], - points[yi][xi + 1], - points[yi + 1][xi + 1] - ], [ - points[yi][xi], - points[yi + 1][xi + 1], - points[yi + 1][xi] - ]); - } - } - } - else { - for(yi = yi_range) { - for(xi = xi_range) { - tri_to_graph([ - points[yi][xi], - points[yi][xi + 1], - points[yi + 1][xi] - ], [ - points[yi + 1][xi], - points[yi][xi + 1], - points[yi + 1][xi + 1] - ]); - } - } - } + twintri_lt = slicing == "SLASH" ? + [ + for(yi = yi_range) + for(xi = xi_range) + [ + [ + points[yi][xi], + points[yi][xi + 1], + points[yi + 1][xi + 1] + ], + [ + points[yi][xi], + points[yi + 1][xi + 1], + points[yi + 1][xi] + ] + ] + ] + : + [ + for(yi = yi_range) + for(xi = xi_range) + [ + [ + points[yi][xi], + points[yi][xi + 1], + points[yi + 1][xi] + ], + [ + points[yi + 1][xi], + points[yi][xi + 1], + points[yi + 1][xi + 1] + ] + ] + ]; + + + for(twintri = twintri_lt) { + tri_to_graph(twintri[0], twintri[1]); + } } }