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=bcad4f3878b617b369dd4b7f155223d43f015f15;hb=d1f9fc4c0e7a12e00138ebb6b899a6a120be3864;hpb=e944e1efb97260ceee77bfaa20b9e56798a6e9e2 diff --git a/tablet-stand.scad b/tablet-stand.scad index bcad4f3..d7ef564 100644 --- a/tablet-stand.scad +++ b/tablet-stand.scad @@ -1,21 +1,72 @@ // -*- 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; +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; - polygon([[-antifoot_front, -antifoot_base], + translate([-antifoot_front-antifoot_back, antifoot_width/2, 0]) + rotate([90,0,0]) + translate([antifoot_front, antifoot_base, 0]) + linear_extrude(height=antifoot_width) + polygon([[-antifoot_front, -antifoot_base], [-antifoot_front, antifoot_height], [0, antifoot_height], [0, 0], [antifoot_depth, 0], [antifoot_back, antifoot_height], [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();