]> www.fi.muni.cz Git - things.git/commitdiff
rc plane wheel
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 20 Jan 2017 15:44:20 +0000 (16:44 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Fri, 20 Jan 2017 15:44:20 +0000 (16:44 +0100)
rc-plane-wheel.scad [new file with mode: 0644]

diff --git a/rc-plane-wheel.scad b/rc-plane-wheel.scad
new file mode 100644 (file)
index 0000000..869ca1b
--- /dev/null
@@ -0,0 +1,43 @@
+infty = 100;
+eps = 0.01;
+
+wheel_d = 60;
+wheel_h = 4;
+wheel_thick = 1;
+
+spokes = 5;
+spoke_w =  5;
+spoke_h = 3;
+
+center_d = 8;
+center_hole = 3;
+
+module body() {
+       // rim
+       difference() {
+               cylinder(r = wheel_d/2, h = wheel_h, $fn = 128);
+               translate([0,0,-eps])
+                       cylinder(r = wheel_d/2 - wheel_thick, h = wheel_h + 2*eps);
+       }
+
+       // spokes
+       for (a = [0:360/spokes:360-eps]) {
+               rotate([0, 0, a])
+               translate([2, 0, 0])
+               hull() {
+                       translate([-spoke_w/2, 0, 0])
+                               cube([spoke_w, wheel_d/2 - wheel_thick/2, eps]);
+                       translate([-eps/2, 0, spoke_h-eps])
+                               cube([eps, wheel_d/2 - wheel_thick/2, eps]);
+               }
+       }
+
+       cylinder(r = center_d/2, h = wheel_h);
+}
+
+difference() {
+       body();
+       // center hole
+       translate([0, 0, -eps])
+               cylinder(r = center_hole/2, h = wheel_h + 2*eps);
+}