X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=fairphone-case.scad;h=2998b54d82d5b98df037a769a11706f42e0b1018;hb=3c1da07f2c510b741d2a83025220c7c1b70aab44;hp=6f6a099fc467b44992ae8c844988b91b97c89f4b;hpb=ed86f435528dd20166d252c921613e9da6a42987;p=reprap-play.git diff --git a/fairphone-case.scad b/fairphone-case.scad index 6f6a099..2998b54 100644 --- a/fairphone-case.scad +++ b/fairphone-case.scad @@ -254,20 +254,7 @@ rearspeaker_gap = [ 2.0, 2.0 ]; // each side thumbrecess_depth = 1.3; thumbrecess_width = 16.5; - -catch_slop = -0.75; - -catch_len = 4.5; -catch_thickness = 1.3; - -catch_depth = 0.75; -catch_height = 0.35; -catch_finger_height = 1.5; -catch_finger_depth = 2.5; -catch_catch_slope = 2.00; -catch_close_slope = 3.00; - -catch_topcurve_r = 5.0; +thumbrecess_topcurve_r = 5.0; prop_recess_under = 0.50; prop_recess_slop = 0.200; // each side @@ -284,6 +271,9 @@ prop_prong_heel_slope = 0.5; lid_fold_clearance_antislop = 0.5; +$button_leg_only = false; +$suppress_forward_holes = false; + // ---------- calculated ---------- phone_width = (phone + bumper*2)[0]; @@ -731,7 +721,7 @@ module ButtonCoverReinf(){ ////toplevel } } -module CatchCutProfile(){ +module ThumbRecessCutProfile(){ difference(){ polygon([ cppA + [-10,0], cppB + [-10,0], @@ -963,9 +953,9 @@ module HingePortion(x0,x1){ children(); } -module CatchPortion(ztop){ +module ThumbRecessApply(ztop){ width = thumbrecess_width; - w = width + catch_topcurve_r*2 + 1; + w = width + thumbrecess_topcurve_r*2 + 1; translate([phone_width/2, 0,0]){ difference(){ rotate([90,0,-90]) @@ -976,10 +966,10 @@ module CatchPortion(ztop){ linear_extrude(height=100){ for (m=[0,1]) mirror([m,0,0]) { hull(){ - translate([w/2, ztop - catch_topcurve_r]) - circle(catch_topcurve_r); + translate([w/2, ztop - thumbrecess_topcurve_r]) + circle(thumbrecess_topcurve_r); translate([w/2, -50]) - square(catch_topcurve_r*2, center=true); + square(thumbrecess_topcurve_r*2, center=true); } } } @@ -1165,9 +1155,11 @@ module Case(){ ////toplevel } // apertures along top edge - CaseAperture(jack_pos, jack_dia, 8); - Flip_rhs(1) - CaseAperture(noisecancelmic_pos, noisecancelmic_dia, 8); + if (!$suppress_forward_holes) { + CaseAperture(jack_pos, jack_dia, 8); + Flip_rhs(1) + CaseAperture(noisecancelmic_pos, noisecancelmic_dia, 8); + } OrdinaryRearApertures(); @@ -1184,9 +1176,9 @@ module Case(){ ////toplevel // screw holes in the hinge arms HingeScrews(); - // catch striker - CatchPortion(epp4[1]) - CatchCutProfile(); + // thumb recess + ThumbRecessApply(epp4[1]) + ThumbRecessCutProfile(); // lanyard Flip_bot(1) @@ -1733,9 +1725,9 @@ module DemoProfiles(){ ////toplevel translate([20,-30]) { %EdgeProfile(); %LidEdgeProfile(); - //translate([0,0,1]) CatchCutProfile(); + //translate([0,0,1]) ThumbRecessCutProfile(); translate([0,0,+1]) color("red") - difference(){ EdgeProfile(); CatchCutProfile(); } + difference(){ EdgeProfile(); ThumbRecessCutProfile(); } } translate([40,-30]) {