Saturday, April 26, 2014

Day 243 - Base for shell models

Last week I used the shell model from Day 237 in class and it was so great to get to that point at the board where my picture is all crazy and I start apologizing for not being able to draw a really good picture of the shells and then be able to say "oh, wait, I happen to have a physical model of this exact example RIGHT HERE" and then pass it around the class.

The only tricky part was picking up the model, since it is made of shells that kind of slide around when you try to grab them all together. So today I made a base for the model and stamped it with the name of our Taalman/Kohn Calculus book so that the publisher can give these models away to people who are using the book. This model is an eight-shell approximation of the volume described Exercise #29 in Section 6.2 (or Section 9.2 if you're using the Calculus I with Integrated Precalculus version): the solid of revolution defined by rotating the region between f(x)=4-x^2 and the x-axis on [0,2] around the y-axis.


Thingiverse link: http://www.thingiverse.com/thing:305282

Settings: Printed on a MakerBot Replicator 2 with .3mm/low.

Technical notes, OpenSCAD flavor: This model is really simple, so a good example if you're new to OpenSCAD. It uses the write.scad code which is included with this command:

use <write.scad>

If the file is in a separate directory then you'll also need to include the path to the file. The code is simple, just make two circles with holes cut out to hold the model, remove a bar through the intersection for the text to pass through, and add the text. 

// name base for the first-example models
difference(){
union(){
// left holder
difference(){
color("white") cylinder(h=4,r=30);
translate([0,0,1.2]) cylinder(h=3,r=26);
}
// right holder
difference(){
translate([0,56,0]) color("white") cylinder(h=4,r=30);
translate([0,56,0]) translate([0,0,1.2]) cylinder(h=3,r=26);
}
}
// box to clip out center
translate([0,30,6.2])
cube([17,30,10],center=true);
// names
translate([0,28.5,3.6]) rotate(90,[0,0,1]) 
color("blue") write("TAALMAN/KOHN",t=6,h=12.5,center=true);
}