From: Ian Jackson Date: Sat, 1 Oct 2022 16:20:13 +0000 (+0100) Subject: fruit-bowl-stand: wip X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=3ced4dd888967be4f7feb258b1ac709c6983338a;p=reprap-play.git fruit-bowl-stand: wip Signed-off-by: Ian Jackson --- diff --git a/fruit-bowl-stand.scad b/fruit-bowl-stand.scad new file mode 100644 index 0000000..634f4d6 --- /dev/null +++ b/fruit-bowl-stand.scad @@ -0,0 +1,51 @@ +// -*- C -*- + +include + +across = 12.5; +r0 = 71; +h = 36; +feet = 5; + +// calculated + +r_eff_across = across/2 * cos(360/8/2); + +effective_corner = across/2 * [ sin(360/8/2), cos(360/8/2) ]; + +r_mid = r0 + effective_corner[0]; + +h_mid = h - effective_corner[1] - r_eff_across;; + +module XSection(){ + rotate(360/8/2) + circle(r= across/2, $fn=8); +} + +module Ring(){ + rotate_extrude($fa=1) + translate([r_mid, 0,0]) + XSection(); +} + +module Foot(){ + rotate([180,0,0]) + linear_extrude(h_mid) + XSection(); +} + +module Stand(){ + Ring(); + intersection(){ + for (a=[0:feet-1]) { + rotate([0,0, 360*a/feet]) + translate([-r_mid, 0,0]) + Foot(); + } + + linextr(-across - h, across) + circle(r= r_mid + r_eff_across, $fa=1); + } +} + +Stand();