X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=osstest-arm-net-bracket.scad;h=75ae6f5a8033bd17ffb0116b93698504bfc868b1;hp=19bfcbef2549b4eb2a45937687cde93d8f71854d;hb=f5f27620358925730f9ad54515c83bc094eea558;hpb=8987326e9a4aaf83e1d13f3a673fff8329b807a6 diff --git a/osstest-arm-net-bracket.scad b/osstest-arm-net-bracket.scad index 19bfcbe..75ae6f5 100644 --- a/osstest-arm-net-bracket.scad +++ b/osstest-arm-net-bracket.scad @@ -2,28 +2,72 @@ holedist = 64; tonguewidth = 10; +tongue2width = 15; totaldepth = 26; -thick = 3; -tabover = 7; -tabunder = 20; +tongue2depth = 35; +thick = 4; +tabover = 7+6; +tabunder = 15; -tabside = 7; +tabsidel = 7; +tabsider = 7+10; tonguethick = 4; +tongue2thick = 5; strapthick = 2; strapwidth = 5; ridgewidth = 2; +hstrengthick = 2.5; +hstrengdepth = strapwidth; + +cutoutover = 7; +rcutoutside = 7+2 - 0.5; +lcutoutside = 7-6.5 - 0.5; + +holedia = 3.5; + +tongue2x = tongue2width - holedist; + +module Tongue(tw,tt,ad,slots=2){ + y0=thick+0.1; + yn=ad-ridgewidth-strapwidth; + difference(){ + translate([-tw, 0, 0]) + cube([tw, ad, tt+strapthick]); + for (yi=[1:slots-1]) + translate([-tw-1, y0 + (yn-y0)*yi/(slots-1), tt]) + cube([tw+2, strapwidth, strapthick+1]); + } +} + module Object(){ - translate([-holedist-tabside, 0, 0]) - cube([tabside*2+holedist, thick, tabunder+tabover]); difference(){ - translate([-tonguewidth, 0, 0]) - cube([tonguewidth, totaldepth, tonguethick+strapthick]); - for (y=[thick+0.1, totaldepth-ridgewidth-strapwidth]) - translate([-tonguewidth-1, y, tonguethick]) - cube([tonguewidth+2, strapwidth, strapthick+1]); + translate([-holedist-tabsider, 0, 0]) { + cube([tabsidel+tabsider+holedist, thick, tabunder+tabover]); + cube([tabsidel+tabsider+holedist, thick+hstrengdepth, hstrengthick]); + } + translate([0,-25,tabunder+cutoutover]) { + translate([-(holedist+rcutoutside), 0,0]) + mirror([1,0,0]) + cube([50,50,50]); + translate([lcutoutside, 0,0]) + cube([50,50,50]); + } + for (x=[-holedist,0]) + translate([x, 0, tabunder]) { + translate([0, -1, 0]) { + rotate([-90,0,0]) { + cylinder(r= holedia/2+0.5, h=thick+2, $fn=20); + } + } + translate([0, 19.95 + thick, 0]) + cube(center=true,[10,40,10]); + } } + Tongue(tonguewidth,tonguethick,totaldepth,3); + translate([tongue2x,0,0]) + Tongue(tongue2width,tongue2thick,tongue2depth+thick,5); } Object();