chiark / gitweb /
fairphone-case: wip buttons
[reprap-play.git] / fairphone-case.scad
index 2e449222ba1e3cc31562f89556456af440a87598..5e00fad8d71e5dc2ac3e9e95b9fefce23ad13560 100644 (file)
@@ -247,6 +247,18 @@ module AroundEdges(fill_zstart, fill_th, fill_downwards=0){
               [phone_width, -phone_height] + [-1,+1] * phone_cnr_rad);
 }
 
+module SideButton(y,l){
+  $button_l= l;
+  translate([0, -y, 0])
+    mirror([1,0,0])
+    rotate([90,0,90])
+    children();
+}
+
+module Buttons(){
+  CaseBase_rhsflip([1]) SideButton(20.6, 8.8) children(); // power
+}
+
 module Struts(x_start, z_min, th){
   // if th is negative, starts at z_min and works towards -ve z
   // and object should then be printed other way up
@@ -311,13 +323,22 @@ module Case(){ ////toplevel
 
     // struts (invisible, because they're buried in the case)
     Struts(epp2i[0], epp2i[1] - case_th_bottom, case_th_bottom);
+
+    Buttons(){
+      translate([0,0,-10])
+       linear_extrude(height= 20)
+       ButtonPlan($button_l, 0,1);
+      translate([0,0, -bppR[0]])
+       linear_extrude(height= 20)
+       ButtonPlan($button_l, 1,1);
+    }
   }
 }
 
 module Lid(){ ////toplevel
   difference(){
     union(){
-      %AroundEdges(lpp10[1], lpp13[1] - lpp10[1], 0)
+      AroundEdges(lpp10[1], lpp13[1] - lpp10[1], 0)
         LidEdgeProfile();
     }
     Struts(lpp10[0] + strut_min_at_end, lpp13[1], -case_th_lid);