chiark / gitweb /
crossbar-computer-led-mount: add foot
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 9 Jun 2013 13:37:59 +0000 (14:37 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 9 Jun 2013 13:37:59 +0000 (14:37 +0100)
crossbar-computer-led-mount.scad

index 21200c0..c0d8086 100644 (file)
@@ -12,8 +12,8 @@ backfront_space_inside = 12;
 width_space_inside = 10;
 
 backfront_mate_size = 25;
-tower_frontheight = 15;
-tower_base_height = 15;
+tower_frontheight = 10;
+tower_base_height = 20;
 tower_slot_width = 3;
 
 cableclamp_ctie_width = 3 + 0.5;
@@ -44,6 +44,16 @@ protrusion_none_frontback = 10;
 protrusion_slop = 0.5;
 cableclamp_ctie_z = tower_frontheight/2;
 
+towerleg_backfront = 5;
+towerleg_width = 3;
+towerleg_foot_gap = 2;
+towerleg_foot_backfront = 20;
+towerleg_foot_width = 40;
+towerleg_foot_height = 10;
+towerleg_yslope = 0.7;
+towerleg_xslope = 0.3;
+echo(sqrt(towerleg_yslope*towerleg_yslope+towerleg_xslope*towerleg_xslope));
+
 //--- tests ---
 
 test_width = 24;
@@ -189,7 +199,7 @@ module LedHole(){
     cylinder(r=led_dia/2, h=led_depth+0.1+10, $fn=31);
 }
 
-module Tower(){ ////toplevel
+module TowerProper(){
   difference(){
     TowerMain();
     LedHole();
@@ -227,6 +237,28 @@ module Tower(){ ////toplevel
   }
 }
 
+module Tower(){ ////toplevel
+  TowerProper();
+  for (mir=[0,1]) {
+    mirror([mir,0,0]){
+      translate([0,
+                tower_rearwall_y + 0.1,
+                -1])
+       mirror([0,0,1])
+       multmatrix([[1,0, towerleg_xslope,0],
+                   [0,1,-towerleg_yslope,0],
+                   [0,0,1,0],
+                   [0,0,0,1]])
+       cube([towerleg_width, towerleg_backfront, tower_base_height-2]);
+    }
+  }
+  translate([-towerleg_foot_width/2,
+            tower_rearwall_y - towerleg_foot_gap,
+            -tower_base_height])
+    mirror([0,1,0])
+    cube([towerleg_foot_width, towerleg_foot_backfront, towerleg_foot_height]);
+}
+
 module TowerMainHull(){
   hull(){ TowerMain(); }
 }