diff --git a/src/turtle/_impl/_lsystem2_impl.scad b/src/turtle/_impl/_lsystem2_impl.scad index 361055b1..7706e435 100644 --- a/src/turtle/_impl/_lsystem2_impl.scad +++ b/src/turtle/_impl/_lsystem2_impl.scad @@ -42,6 +42,7 @@ function _lines(t, codes, angle, leng) = i = i + 1, t2 = _next_t2(t1, codes[i], angle, leng) ) - if(search(codes[i], "F+-") != []) - [turtle2d("pt", t1), turtle2d("pt", t2)] + let(p1 = turtle2d("pt", t1), p2 = turtle2d("pt", t2)) + if(search(codes[i], "F+-") != [] && p1 != p2) + [p1, p2] ]; \ No newline at end of file diff --git a/src/turtle/_impl/_lsystem3_impl.scad b/src/turtle/_impl/_lsystem3_impl.scad index a3faa203..5c021650 100644 --- a/src/turtle/_impl/_lsystem3_impl.scad +++ b/src/turtle/_impl/_lsystem3_impl.scad @@ -46,6 +46,7 @@ function _lines(t, codes, angle, leng) = i = i + 1, t2 = _next_t2(t1, codes[i], angle, leng) ) - if(search(codes[i], "F+-") != []) + let(p1 = turtle3d("pt", t1), p2 = turtle3d("pt", t2)) + if(search(codes[i], "F+-") != [] && p1 != p2) [turtle3d("pt", t1), turtle3d("pt", t2)] ]; \ No newline at end of file