chiark / gitweb /
anke-gps-bracket: NestleCube: bevels via triangles
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 2 Dec 2012 18:31:02 +0000 (18:31 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 2 Dec 2012 18:31:02 +0000 (18:31 +0000)
anke-gps-bracket.scad

index d2c69ab48d3931f253fe505c6e3f18943c5ab4d3..81c39f3e86c7ae2cb5650848bc8d33454cc97762 100644 (file)
@@ -231,6 +231,10 @@ module NestleCube(){ ////toplevel
   cutw0 = basew0 - nestlewallmin;
   cutw1 = basew1 + nestlewallmin;
 
+  bevth = -nestleh + nestlebevel*2;
+  bevw = nestlebevel;
+  bevd = nestlebevel;
+
   translate([-(basew0+basew1)/2, -(based0+based1)/2, 0]) {
     difference(){
       polyhedron
@@ -240,27 +244,37 @@ module NestleCube(){ ////toplevel
          [          -midw   ,            +midd,     0], // 2
          [          -nestlew,            +nestledl, 0], // 3
          [          -nestlew,            +0,        0], // 4
-         [-nestledwr+0      , +nestleddf +0,        -nestleh], // 5
-         [-nestledwr+0      , -nestleddbr+nestledr, -nestleh], // 6
-         [          -midw   , -midddb    +midd,     -nestleh], // 7
-         [+nestledwl-nestlew, -nestleddbl+nestledl, -nestleh], // 8
-         [+nestledwl-nestlew, +nestleddf +0,        -nestleh]], // 9
-        triangles=[[0,1,6],[6,5,0],
+         [-nestledwr+0      , +nestleddf +0,        bevth], // 5
+         [-nestledwr+0      , -nestleddbr+nestledr, bevth], // 6
+         [          -midw   , -midddb    +midd,     bevth], // 7
+         [+nestledwl-nestlew, -nestleddbl+nestledl, bevth], // 8
+         [+nestledwl-nestlew, +nestleddf +0,        bevth], // 9
+         [-nestledwr+0      -bevw, +nestleddf +0       +bevd, -nestleh], // 10
+         [-nestledwr+0      -bevw, -nestleddbr+nestledr-bevd, -nestleh], // 11
+         [          -midw        , -midddb    +midd    -bevd, -nestleh], // 12
+         [+nestledwl-nestlew+bevw, -nestleddbl+nestledl-bevd, -nestleh], // 13
+         [+nestledwl-nestlew+bevw, +nestleddf +0       +bevd, -nestleh]], // 14
+        triangles=[// main side panels
+                   [0,1,6],[6,5,0],
                    [1,2,7],[7,6,1],
                    [2,3,8],[8,7,2],
                    [3,4,9],[9,8,3],
                    [4,0,5],[5,9,4],
+                   [0,1,6],[6,5,0],
+                   // bevels
+                   [6,7,12],[12,11,6],
+                   [7,8,13],[13,12,7],
+                   [8,9,14],[14,13,8],
+                   [9,5,10],[10,14,9],
+                   [5,6,11],[11,10,5],
+                   // top and bottom
                    [4,3,2],[2,1,0],[0,4,2],
-                   [7,8,9],[5,6,7],[7,9,5]],
+                   [12,13,14],[10,11,12],[12,14,10]],
         convexity=3);
       intersection(){
        #NestleCubeCutout(cutw1, cutw0, max(nestledl,nestledr));
        #rotate([0,0,90]) NestleCubeCutout(cutd0, cutd1, nestlew);
       }
-      translate([0,0,-nestleh]) {
-       translate([-nestledwr, 0, 0]) NestleCubeBevel(0);
-       translate([-nestlew+nestledwl, 0, 0]) NestleCubeBevel(180);
-      }
     }
   }