X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=sleepphone-cable-box.scad;h=8c06fb69c60d87b86099931a091689235b166415;hb=34824deefe284432045c5f86ad0b927ae08f47fc;hp=40fe4cc20da32a79b5472143164092f7ed723a96;hpb=6c0c5dfaf0d6e43e9b8e83de45f43ada3672d3b4;p=reprap-play.git diff --git a/sleepphone-cable-box.scad b/sleepphone-cable-box.scad index 40fe4cc..8c06fb6 100644 --- a/sleepphone-cable-box.scad +++ b/sleepphone-cable-box.scad @@ -3,10 +3,14 @@ include wall = 0.75 * [1,1,1]; +wall_bot = 1.0; + phone = [ 76.40, 30.96, 6.00 ]; // includes socket phone_button_z = 6.58; minwall = 0.50; +cutout_depth = 5; + button_dz = 1.35; button_dy_outer = 28.42; @@ -33,6 +37,7 @@ keeper_prong = 2; keeper_stalk_basewidth = 4; keeper_stalk_len = 70; keeper_stalk_gap = 2; +keeper_stalk_thick = wall_bot; // calculated @@ -70,7 +75,8 @@ module MainProfile(){ difference(){ for (m=[0,1]) mirror([m,0]) { minkowski(){ - square(2 * [wall[1], wall[2]], center=true); + translate([ -wall[1], -wall_bot ]) + square([ wall[1]*2, wall_bot + wall[2] ]); MainProfileInnerHalf(); } } @@ -107,14 +113,14 @@ module PlugKeeperStalkProfile(){ hull(){ for (m=[0,1]) mirror([0,m,0]) PlugKeeperProfileHalf(); translate([ plugkeeper_x_maxw + keeper_stalk_len, 0,0 ]) - square([ 0.1, keeper_stalk_basewidth/2 ], center=true); + square([ 0.1, keeper_stalk_basewidth ], center=true); } } module PlugKeeper(){ for (m=[0,1]) mirror([0,m,0]) { - translate([0,0, -wall[2]]) - linear_extrude(height=plug_h + wall[2]) + translate([0,0, -keeper_stalk_thick]) + linear_extrude(height=plug_h + keeper_stalk_thick) PlugKeeperProfileHalf(); translate([0, 0, plug_h - plug_tooth_h]) @@ -123,10 +129,14 @@ module PlugKeeper(){ PlugKeeperProfileHalf(); } +} - translate([0,0, -wall[2]]) - linear_extrude(height = wall[2]) - PlugKeeperStalkProfile(); +module KeeperProjection(){ + projection() + rotate([0,90,0]) + linear_extrude(height= 20) + projection() + PlugKeeper(); } module Box(){ @@ -140,11 +150,23 @@ module Box(){ translate([ -0.1, ys * keeper_stalk_gap, -wall[2]*2]) linear_extrude(height = wall[2]*3) PlugKeeperStalkProfile(); + + translate([ phone[0] - cutout_depth, + 0, + -10 ]) + linear_extrude(height=50) + KeeperProjection(); } PlugKeeper(); + + translate([0,0, -keeper_stalk_thick]) + linear_extrude(height = keeper_stalk_thick) + PlugKeeperStalkProfile(); } -//MainProfileInner(); +//MainProfileInnerHalf(); +//MainProfile(); +//KeeperProjection(); Box();