]> www.fi.muni.cz Git - things.git/commitdiff
sorarograph Al can stand
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Sun, 15 Sep 2019 11:32:41 +0000 (13:32 +0200)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Sun, 15 Sep 2019 11:32:41 +0000 (13:32 +0200)
solarograph-stand.scad [new file with mode: 0644]

diff --git a/solarograph-stand.scad b/solarograph-stand.scad
new file mode 100644 (file)
index 0000000..faf10c8
--- /dev/null
@@ -0,0 +1,43 @@
+$fn = 128;
+eps = 0.01;
+infty = 200;
+
+can_d = 65 + 1.5;
+cone_h = 3;
+angle = 15; // from the vertical axis
+
+side_h = 25;
+
+wall = 1.5;
+side_w = 12;
+
+center_slot = 20;
+
+difference() {
+       translate([0, 0, (can_d/2+wall)*sin(angle)])
+       rotate([0, angle, 0])
+               cylinder(r = can_d/2 + wall, h = side_h + wall);
+       translate([0, 0, (can_d/2+wall)*sin(angle)])
+       rotate([0, angle, 0])
+       translate([0, 0, wall/cos(angle)]) {
+               cylinder(r1 = can_d/2-cone_h, r2 = can_d/2, h = cone_h + eps);
+               translate([0, 0, cone_h])
+                       cylinder(r = can_d/2, h = side_h + eps);
+               translate([-can_d/2-wall-eps, 0, side_h])
+               rotate([0, 90, 0])
+               scale([side_h/center_slot, 1, 1])
+                       cylinder(r = center_slot, h = can_d + 2*wall + 2*eps);
+       } 
+       translate([-infty/2, -infty/2, -infty]) cube(infty);
+}
+
+hull() {
+       translate([0, 0, (can_d/2+wall)*sin(angle)])
+       rotate([0, angle, 0])
+               cylinder(r = can_d/2 + wall, h = eps);
+       scale([cos(angle), 1, 1])
+               cylinder(r = can_d/2 + wall, h = wall);
+}
+
+translate([-(can_d/2+wall)*cos(angle), -side_w-wall-can_d/2, 0])
+       cube([(can_d+2*wall)*cos(angle)+wall*tan(angle), 2*side_w+2*wall+can_d, wall]);