chiark / gitweb /
fairphone-case: LidButtonishLegs
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 21 Jan 2018 14:57:20 +0000 (14:57 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 21 Jan 2018 14:57:20 +0000 (14:57 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
fairphone-case.scad

index a8c393f197eb1922fa7f8a8b83075137a115d641..cc762bad8eee61a1c2890b7cc0afb9c3840be2a9 100644 (file)
@@ -272,10 +272,16 @@ module SideButton(y, y_ref_sign, l){
     children();
 }
 
+module LidButtonishLeg(y, y_ref_sign) {
+  $button_leg_only = true;
+  SideButton(y, y_ref_sign, 10) children();
+}
+
 module Buttons(){
   CaseBase_rhsflip([1]) SideButton(15.580, +1, 8.9) children(); // power
   CaseBase_rhsflip([1]) SideButton(48.700, -1, 8.920) children(); // camera
   CaseBase_rhsflip([0]) SideButton(30.800, +1, 21.96) children(); // volume
+  CaseBase_rhsflip(   ) LidButtonishLeg(20, -1) children();
 }
 
 module Struts(x_start, z_min, th){
@@ -347,9 +353,15 @@ module Case(){ ////toplevel
     Buttons(){
       mirror([1,0,0])
        rotate([90,0,90]) {
-         translate([0,0,-10])
-           linear_extrude(height= 20)
-           ButtonPlan($button_l, 0,1);
+         intersection(){
+           translate([0,0,-10])
+             linear_extrude(height= 20)
+             ButtonPlan($button_l, 0,1);
+           if ($button_leg_only)
+             rotate([-90,90,0])
+               translate([phone_width/2, -400, kppe[1]])
+               mirror([$rhsflip,0,0]) cube([400, 800, 50]);
+         }
          translate([0,0, -bppR[0]])
            linear_extrude(height= 20)
            ButtonPlan($button_l, 1,1);