From: Jan "Yenya" Kasprzak Date: Wed, 6 Mar 2024 20:58:10 +0000 (+0100) Subject: paul trap holder X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=commitdiff_plain;h=d92044d481e48e402fcf548aadd9c8683b7b20f0;p=things.git paul trap holder --- diff --git a/paul-trap-holder.scad b/paul-trap-holder.scad new file mode 100644 index 0000000..d951208 --- /dev/null +++ b/paul-trap-holder.scad @@ -0,0 +1,36 @@ +include + +base_wall = 3; +rod_d = 5 + 0.5; +d_max = 40; +d_min = 15; +steps = 3; + +difference() { + cylinder(r = d_max/2+base_wall + rod_d/2, h = base_wall, $fn = 6); + for (i = [0:1:steps]) { + Rz((steps-i)*85/steps) + for (angle = [0:60:360]) Rz(angle) Tx(d_min/2+i*(d_max-d_min)/(2*(steps))) Tz(-eps) + cylinder(r = rod_d/2, h = base_wall + 2*eps, $fn = 6); + } +} + +// strut +strut_w = 15; +strut_l = 80; + +Ty((d_max/2+base_wall+rod_d/2)*cos(30)) { + Tx(-strut_w/2) { + cube([strut_w, strut_l, base_wall]); + Ty(strut_l-base_wall) difference() { + cube([strut_w, base_wall, strut_w]); + Tx(strut_w/2) Tz(strut_w/2) Rx(-90) Tz(-eps) cylinder(r = 2.5, h = base_wall+2*eps, $fn = 6); + } + } + Mx() hull() { + Tx(strut_w/2-base_wall) { + Ty(-base_wall) cube([base_wall, eps, base_wall]); + Ty(strut_l-base_wall) cube([base_wall, base_wall, strut_w]); + } + } +}