diff --git a/src/in_line.scad b/src/in_line.scad index 9c80ab66..ff6995d9 100644 --- a/src/in_line.scad +++ b/src/in_line.scad @@ -1,3 +1,10 @@ include <__private__/__in_line.scad>; -function in_line(line_pts, pt, epsilon = 0.0001) = __in_line(line_pts, pt, epsilon); \ No newline at end of file +function _in_line_sub(line_pts, pt, epsilon, iend, i = 0) = + i == iend ? false : ( + __in_line([line_pts[i], line_pts[i + 1]], pt, epsilon) ? true : + _in_line_sub(line_pts, pt, epsilon, iend, i + 1) + ); + +function in_line(line_pts, pt, epsilon = 0.0001) = _in_line_sub(line_pts, pt, epsilon, len(line_pts) - 1); + \ No newline at end of file