X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=brompton-computer-guard.scad;h=efb3a8a129bd7bdfac21ca94a86c19401c152cc3;hp=1c7a536c834fed2241074d02d504650a1d3688fd;hb=98ac69444e6999dc9f9a57dfa175651a9fa0b5c7;hpb=b834783bbe4ba04b75574ab5247481383d62b14e diff --git a/brompton-computer-guard.scad b/brompton-computer-guard.scad index 1c7a536..efb3a8a 100644 --- a/brompton-computer-guard.scad +++ b/brompton-computer-guard.scad @@ -21,6 +21,11 @@ echo(arch_alpha,arch_beta); arch_in_rad = arch_width/2 / sin(arch_beta); arch_to_chord = arch_in_rad * cos(arch_beta); +inner_pbase_thick = 6; +echo(inner_pbase_thick); + +inner_pbase_rad = arch_in_rad * 2; + end_thick = arch_thick; holes = [[[ 5 , 5 ], [16 , 21]], // left @@ -63,19 +68,34 @@ module Holes(){ } } +module MainCutout(){ + ArchCircle(arch_in_rad); +} + module Arch(){ difference(){ rotate([0,0,180]){ + linear_extrude(height=arch_breadth) { + difference(){ + ArchProfile(false); + MainCutout(); + } + } difference(){ - union(){ - linear_extrude(height=arch_breadth) ArchProfile(false); - linear_extrude(height=pbase_thick) hull(){ - ArchProfile(true); - ArchProfile(false); + linear_extrude(height=pbase_thick){ + difference(){ + hull(){ + ArchProfile(true); + ArchProfile(false); + } + intersection(){ + MainCutout(); + translate([0, -inner_pbase_thick + - (inner_pbase_rad - arch_in_rad)]) + ArchCircle(inner_pbase_rad); + } } } - translate([0,0,-1]) linear_extrude(height=100) - ArchCircle(arch_in_rad); } } Holes();