chiark / gitweb /
fix senses
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 5 Nov 2017 01:25:55 +0000 (01:25 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 5 Nov 2017 01:25:55 +0000 (01:25 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
genscad

diff --git a/genscad b/genscad
index bb9f7fea57e964daf32d5174fe8ca950f7335ea9..7bc7608df9995717e941d29e5cd9a4ac71a2d2e6 100755 (executable)
--- a/genscad
+++ b/genscad
@@ -47,6 +47,11 @@ def stl_quad(cnrs):
   stl_triangle(cnrs[0], cnrs[1], cnrs[3])
   stl_triangle(cnrs[0], cnrs[3], cnrs[2])
 
+def stl_rquad(cnrs):
+  ''' cnrs[0] [1] [3] [2] are anticlockwise from inside '''
+  stl_triangle(cnrs[0], cnrs[3], cnrs[1])
+  stl_triangle(cnrs[0], cnrs[2], cnrs[3])
+
 relthick = thick/(nomsize*2)
 
 for v in range(0, nv):
@@ -54,8 +59,12 @@ for v in range(0, nv):
     stl_quad([ m.point_offset(v+a, w+b,  relthick)
                for a in (0, 1)
                for b in (0, 1) ])
-    stl_quad([ m.point_offset(v+a, w+b, -relthick)
+    stl_rquad([ m.point_offset(v+a, w+b, -relthick)
                for a in (1, 0)
                for b in (1, 0) ])
+  for q, w in ((stl_quad, 0), (stl_rquad, nw)):
+    q([ m.point_offset(v+a, w,  b*relthick)
+        for a in (0, 1)
+        for b in (-1, +1) ])
 
 stl_writeout()