[Thread revival - Mod]
I'm still collecting parts to make my printer. In the meantime, I've been practicing with 3D stuff.
One of the packages is a programming language that generates 3D files, it's called OPENSCAD.
Being a computer programmer, this is an attractive way to produce 3D objects.
You can download it from their website:
http://www.openscad.org/
And to be specifically on-topic for this particular forum, I have a code demo that you can load into OPENSCAD and zoom around at the object. See if you can figure out what it is:
$fn=30;
module plaintube()
{
difference()
{
cylinder(r=26.16,h=130, center=true);
cylinder(r=23.11,h=131, center=true);
}
}
module notchedtube()
{
difference()
{
plaintube();
notchspace();
}
}
module notchspace()
{
translate([0,26,45])
{
translate([-6.35,-6.35,-20])
{
rotate(a=0,v=[0,0,1], center=true)
{
cube([12.7,12.7,40]);
}
}
}
}
module mouthpiecebody()
{
difference()
{
notchedtube();
translate([0,11.4,-20])
{
rotate(a=10,v=[1,0,0], center=true)
{
notchspace();
}
}
}
}
module shroud()
{
difference()
{
translate([0,0,40.1])
{
difference()
{
cylinder(r=29.21,h=50, center=true);
cylinder(r=26.16,h=50, center=true);
}
}
shroudnotch();
}
}
module shroudnotch()
{
translate([0,26,45])
{
translate([-6.35,-6.35,-54.55])
{
rotate(a=0,v=[0,0,1], center=true)
{
cube([12.7,12.7,40]);
}
}
}
}
module block()
{
translate([0,0,48])
{
cylinder(r=23.11,h=34.29, center=true);
}
}
module coupler()
{
translate([0,0, -95])
{
difference()
{
cylinder(r=29.21,h=80, center=true);
cylinder(r=26.16,h=81, center=true);
}
}
}
module mainwhistle()
{
mouthpiecebody();
block();
shroud();
coupler();
}
module beak()
{
translate([-50,-6, +65])
{
rotate(a=90,v=[0,1,0], center=true)
{
cylinder(r=26.16,h=130);
}
}
translate([-30, -75, 38.7])
{
cube([60,70,50]);
}
}
difference()
{
mainwhistle();
beak();
}