X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=fairphone-case.scad;h=f7572934dd404f964324320aa1fb1346f527bc46;hb=873cec3c0de31483d6d58ca3fa9ec11e5d953626;hp=5548b9dcc77a9f8bceebfbc14486732472cec744;hpb=40154e3c986aaaf9dbffeb8fea9d3738fe74ecd6;p=reprap-play.git diff --git a/fairphone-case.scad b/fairphone-case.scad index 5548b9d..f757293 100644 --- a/fairphone-case.scad +++ b/fairphone-case.scad @@ -407,7 +407,8 @@ module LidEdgeProfile(){ module ButtonCoverProfile(){ intersection(){ polygon(concat([ bppM, bppP, bppO, bppJ ], - (enable_support ? [ bppU, bppV, bppW ] : []), + (enable_support && !$button_suppress_over_keeper + ? [ bppU, bppV, bppW ] : []), [ bppL, bppK ])); hull(){ EdgeProfile(); @@ -553,12 +554,13 @@ module CaseAperture(pos, dia, $fn) { h = 60); } -module SideButton(y, y_ref_sign, l){ +module SideButton(y, y_ref_sign, l, suppress_over_keeper=0){ // y_ref_sign: // +1 measured from top of actual phone to top of button // -1 measured from bottom of actual phone to bottom of button // 0 y is centre of button in coordinate system $button_l= l; + $button_suppress_over_keeper= suppress_over_keeper; eff_y = y_ref_sign > 0 ? -bumper [1] -y -l/2 : y_ref_sign < 0 ? (-phone -bumper)[1] +y +l/2 : y; @@ -573,9 +575,9 @@ module LidButtonishLeg(y, y_ref_sign, l=buttonishleg_default_l_is_fudge) { } module Buttons(){ - Flip_rhs(1) SideButton(15.580, +1, 8.9) children(); // power - Flip_rhs(1) SideButton(48.700, -1, 8.920) children(); // camera - Flip_rhs(0) SideButton(30.800, +1, 21.96) children(); // volume + Flip_rhs(1) SideButton(15.580, +1, 8.9 ) children(); // power + Flip_rhs(1) SideButton(48.700, -1, 8.920 ) children(); // camera + Flip_rhs(0) SideButton(30.800, +1, 21.96, 1) children(); // volume Flip_rhs( ) LidButtonishLeg(14, -1) children(); // Flip_rhs(0) LidButtonishLeg(20, +1, 20) children(); } @@ -879,7 +881,7 @@ module Case(){ ////toplevel translate([phone_width/2, -400, kppe[1]]) mirror([1-abs($rhsflip - keeper_side),0,0]) cube([400, 800, 50]); - if (enable_support) + if (enable_support && !$button_suppress_over_keeper) rotate([-90,90,0]) translate([-400, -400, kppd[1]]) mirror([0,0,1]) @@ -1177,12 +1179,16 @@ module TestFrameCase(){ ////toplevel } } +module TestSelectTopApertures(){ + translate([-100, -35, -100]) + cube([400, 100, 200]); +} + module TestTopApertures(){ ////toplevel intersection(){ Case(); TestSelectFrame(); - translate([-100, -35, -100]) - cube([400, 100, 200]); + TestSelectTopApertures(); } }