chiark / gitweb /
fairphone-case: Button cover
[reprap-play.git] / fairphone-case.scad
index a4d07f3895ad22d331284fd6d7d9a66379372cbe..c938f773b58a536fd8aca69c45016ce2143dd462 100644 (file)
@@ -15,9 +15,9 @@ phone_backside_slope_outer = 1.0; // larger means shallower
 camera_pos_tl = [  7.0, 13.0 ]; // measured from tl corner
 camera_pos_br = [ 22.85,37.85]; // tl/br as seen from back
 
-case_th_bottom = 3.5;
-case_th_lid = 3.5;
-case_th_side = 2.5;
+case_th_bottom = 2.5;
+case_th_lid = 2.5;
+case_th_side = 2;
 case_th_lip = 1.2;
 
 case_struts_count = 6;
@@ -252,8 +252,6 @@ module AroundEdges(fill_zstart, fill_th, fill_downwards=0){
 module SideButton(y,l){
   $button_l= l;
   translate([0, -y, 0])
-    mirror([1,0,0])
-    rotate([90,0,90])
     children();
 }
 
@@ -327,12 +325,15 @@ module Case(){ ////toplevel
     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);
+      mirror([1,0,0])
+       rotate([90,0,90]) {
+         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);
+        }
     }
   }
 }
@@ -342,6 +343,18 @@ module Lid(){ ////toplevel
     union(){
       AroundEdges(lpp10[1], lpp13[1] - lpp10[1], 0)
         LidEdgeProfile();
+      Buttons(){
+       intersection(){
+         rotate([90,0,90])
+           translate([0,0,-10])
+           linear_extrude(height= 20)
+           ButtonPlan($button_l, 0,1);
+         rotate([90,0,0])
+            translate([0,0,-100])
+           linear_extrude(height= 200)
+           ButtonCoverProfile();
+       }
+      }
     }
     Struts(lpp10[0] + strut_min_at_end, lpp13[1], -case_th_lid);
   }