Solid of Revolution
 
Maple 8 code:
with(plots): with(plottools): 
f := t -> t^3/2-2*t^2+2*t+1:
 
region1:=plot3d([0,y,z],y=0..3,z=0..f(y),
    axes=normal,color=red):
region:=n->rotate(region1,0,-n*Pi/15,0):
P:=display(seq(region(n),n=1..30),insequence=true):

surface := n->
    cylinderplot(f(z),theta=0..n*2*Pi/30,
        z=0..3,shading=ZHUE):
Q:=display(seq(rotate(surface(n),Pi/2,Pi/2,0),
   n=1..30), insequence=true, axes=normal, 
   tickmarks=[0,0,0]):

left:=n->rotate(plot3d([r,theta,0],r=0..f(0),
      theta=0..n*Pi/15, coords=cylindrical,
      color=red),Pi/2,Pi/2,0):
right:=n->translate(rotate(plot3d([r,theta,0], 
      r=0..f(3),theta=0..n*Pi/15,coords=cylindrical,
      color= red), Pi/2,Pi/2,0),0,3,0):

L:=display(seq(left(n),n=1..30),insequence=true):
R:=display(seq(right(n),n=1..30),insequence=true):

display({region1,P,Q,L,R},orientation=[20,60]);
Comments: 
  1. Much more sophisticated than the other solid of revolution, this Maple code rotates the region under the graph of f, rather than just the graph of f.  It also displays the left and right bounding disks of the solid.
  2. We used an animation editor to slow down the animation, and to display the first and last frames for a longer time than the intermediate ones, thereby giving the viewer time to understand what is happening.