X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=tablet-stand.scad;h=d7ef5645d2fd0031de04d59835e5975777bbe8fe;hp=b2955f2f322ed1634558bb3c02c7f7da6169d2ee;hb=35c4ebb85758082fd30687a14098f399a6abd914;hpb=aa515fdbe89e343630ee3bd56e6cfb375cad0d8f diff --git a/tablet-stand.scad b/tablet-stand.scad index b2955f2..d7ef564 100644 --- a/tablet-stand.scad +++ b/tablet-stand.scad @@ -1,15 +1,29 @@ // -*- C -*- +whole_depth = 90; +whole_width = 120; + antifoot_width = 15; antifoot_height = 15; antifoot_slope = 1.0; antifoot_depth = 10; -antifoot_base = 8; +antifoot_base = 12; antifoot_front = 5; -antifoot_overlap = 5; + +leg_width = 8; +leg_thick = 8; + +post_height = 50; +orifice_dia = 22.1 + 0.3; +post_thick = 8; + +stretcher_thick = 5; +stretcher_width = 8; + +antifoot_back = antifoot_depth + antifoot_height/antifoot_slope; +post_rad = orifice_dia/2 + post_thick; module AntiFoot(){ - antifoot_back = antifoot_depth + antifoot_height/antifoot_slope; translate([-antifoot_front-antifoot_back, antifoot_width/2, 0]) rotate([90,0,0]) translate([antifoot_front, antifoot_base, 0]) @@ -20,8 +34,39 @@ module AntiFoot(){ [0, 0], [antifoot_depth, 0], [antifoot_back, antifoot_height], - [antifoot_back+antifoot_overlap, antifoot_height], - [antifoot_back+antifoot_overlap, -antifoot_base]]); + [antifoot_back, -antifoot_base]]); + translate([-antifoot_back, 0, 0]) + cube([stretcher_width, whole_width*0.55, stretcher_width]); +} + +module LeftLeg(){ + effective_depth = whole_depth - antifoot_back; + translate([-effective_depth, -whole_width/2, 0]) + AntiFoot(); + hull(){ + translate([-effective_depth-leg_width/2, -whole_width/2, 0]) + cylinder(r=leg_width/2, h=antifoot_base); + cylinder(r=leg_width/2, h=post_height); + } +} + +module RightLeg(){ + mirror([0,1,0]) LeftLeg(); +} + +module Post(){ + cylinder(h=post_height, r=post_rad, $fn=70); +} + +module Stand(){ + difference(){ + union(){ + LeftLeg(); + RightLeg(); + Post(); + } + translate([0,0,-1]) cylinder(h=post_height+2, r=orifice_dia/2); + } } -AntiFoot(); +Stand();