My first object - a wheel with spokes

master
Robert "ar" Gerus 2013-06-06 02:45:50 +02:00
commit 9606e7364b
2 changed files with 29 additions and 0 deletions

BIN
wheel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

29
wheel.scad Normal file
View File

@ -0,0 +1,29 @@
$fn=100;
module wheel(radius, width, thickness, spokes) {
union() {
difference() {
// basis for our wheel - a sphere
sphere(radius);
// upper cut-out
translate([0,0,width/2])
cylinder(radius-(width/2) +1, radius, radius, 0);
// lower cut-out
translate([0,0,-radius -1])
cylinder(radius-(width/2) +1, radius, radius, 0);
/*
inner cut-out
removing 1 from z on translate and making the cylinder
higher by two to generate slightly more valid objects
*/
translate([0,0,-width/2 -1])
cylinder(width+2, radius-thickness, radius-thickness, 0);
}
// spokes
for (i = [0:(360/spokes):360]) {
rotate([0,0,i])
translate([-(radius-thickness),-(radius-thickness)/(spokes*2), -(width/2)])
cube([(radius-thickness), (radius-thickness)/(spokes), width]);
}
}
}