From b37508dd943ad285d3a470c9880232dee070d83b Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Sun, 8 May 2022 10:00:59 +0800 Subject: [PATCH] avoid p1 == p2 --- src/turtle/_impl/_lsystem2_impl.scad | 5 +++-- src/turtle/_impl/_lsystem3_impl.scad | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) 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