Week 1:Friday Today Ana, Faith, and I figured out how to save our Mathematica animations as animated GIF files that can be imported onto a website. The code is actually much simpler than we expected because in Mathematica 5.0 it is possible to export a list of graphics images as a .gif type, instead of having to create each image separately and the merging them together into one animation. This is the code we used to export our Mathematica images: Export["anim1.gif",listg,"GIF", ConversionOptions > {"Loop" > True}] Here anim1.gif is the file name of the GIF animation we are creating, listg is the list of the graphics images in our animation, and "GIF" is the type of the exported file. We found that we also had to include the conversion option in which the animation loops continually (but that might not always be necessary). There are many other conversion options, which are explained in depth in the Mathematica Help Browser, under the Additional Information section at the bottom of the description of the Export method. In order to specify where you like your export GIF animation to be saved, you can set the directory using: SetDirectory["H:"] where "H:" is the drive where the animation will be stored. More specifically, in order to create our list of graphics to export into the GIF file, we simply appended each new image created to a list listg. We wanted the animation to pause when it had finished unfolding before looping back and beginning the animation again, so we included this conditional statement at the end of our for loop that added the last graphics image of the animation to the list eight times, to simulate this pause. This is our code for the simplest example: listg = {} n = 25; For[ i = 0, i = n, i++, Print[i]; t = (Pi)(i/n); g = Show[ Graphics3D[ { base, front[t], A[t], B[t] }, Axes > True, AxesLabel > {"x", "y", "z"}, Boxed > False, PlotRange > {{(a + (1/2)a), a + (1/2)a}, {1, b + 1}, {1, a + (1/2)a}} ] ]; If[i < n, listg = Append[listg,g], listg = Join[listg, {g, g, g, g, g, g, g, g}]]; ] The parts shown in purple are those that deal with the creation of a list containing the images that need to be included in the animated GIF file. 
Week 2:At the beginning of this week, we have been creating still images that will serve as figures in the teachers' guide Joe is writing. We initially decided not to change the images we had created in Mathematica, but as we were editing the document, we realized that the explainations of popup cards made through parallel cuts were confusing when the figures associated did not actualy show any cuts. Our pictures, as can be seen in the animation from last week, did not show any of the holes in the cards that would be created through cutting. We decided that the still images included in the document should show these white spaces in order to make the description of the cutting process clearer. This was actually a complicated change to make, because we had to calculate the points defining the holes in 3D. For example, in the first of the series of still pictures shown below, we had to find the proportion of the length of the cut section to the length of the card in order to find the bottom two corners of the hole. The final images are much clearer than our initial attempts, so the work was worth it.
Joe also decided that it would be useful to include a few pictures of the physical popup cards we created as examples, so we took some digital pictures of cards as well.
Joe asked us to begin writing the section of the paper on nonparalellogram quadrilaterals, so we worked on outlining that section in the middle of the week. We had to decide which points needed to be made and the diagrams we would need to include in the explainations. As Faith had discovered the first week, there are a number of constraints that define the types of quadrilaterals that will function as popup cards (in other words cards that will be able to open and close completely and correctly). We decided that a good question to ask at the beginning of the section would be whether the quadrilateral could have four sides of completely different lengths, giving the following two examples: The explaination section shows that only the picture on the right will be able to open and close completely, outlining the particular constraints. At the end of the week, we began editing the portion of the document that Joe had written. Many of the explainations needed to be fleshed out, and we realized that one of our diagrams (showing a card that would not be able to open completely) did not make much sense in context. We decided to expand this figure so that it shows a threeimage still animation, which is much clearer. 
Week 3:Wednesday This week we are starting to work on the rotation section of the popup book. First we are attempting to create diagrams to explain the movement of a card created by making one perpendicular cut in the card, and then folding out the center so that a section formed by two triangles pops out. We don't have pictures to show this yet, but the geometry of this card is much more complicated than those we described in the first section. The center crease of this popout section actually moves along the surface of a cone, whose tip is centered at the base of the popout. We made a mathematica animation of this card yesterday, but today we discovered that everything we did was actually wrong because the cone we were tracing was centered across the card crease, when it should actually be centered around the line that bisects the right angle between the card crease and the line perpendicular to this (parallel to the card base), formed when the popup card is completely closed. We have had a lot of trouble calculating the correct points to create this new animation, and do not have a good diagram of it yet.
Thursday
Today we were able to finish our animation because Joe worked on it some at home, fixing the part that we didn't know how to complete. Once the circles displaying the cone were working, we were able to add the card and the polygons that pop out of the card pretty easily. There were a few complications because it turns out the equations used to find the points on the popout section can not be solved for the angle 0 or pi, so we could not include the completely open or completely closed view in our animation.
Friday
We decided that we will next need to explain the concept of moving the foldout section of the vfold rotation card away from the center of the card, pointing out that the motion created by the card is exactly the same. This was a bit complicated because we had to use two separate anglesthe angle formed by the card and the angle between the foldout and the card baseto calculate the points needed. Today we also learned a little a little about how to use POVRay, which we will be using to make a diagram showing that the intersection of a cone and a sphere is a circle. 
Week 4:Monday This week we are starting to work in POVRay a little bit, experimenting with ways that we can create a good image displaying that the intersection of a sphere and a cone is a circle. We have figured out how to use the program on a basic level, enough so that we can make a transparent sphere (use the glass.inc package and choose a glass color). We have discovered that is actually difficult to design a clear image that displays this point though. In order to see the circle that is created, a camera must look at the cone dead on, but this is confusing because it does not really look like a cone. So we are still working on finding the optimal view.
Tuesday Today we finished our POVray figure of the cone intersecting the sphere. It came out pretty well, but we also learned a lot more about what can actually be accomplished in POVray, which made our accomplishment seem much less significant. We had some difficulties with getting the camera and the obejcts in the right place to create the picture we wanted. What we learned is that the coordinate system in POVray is very counterintuitive, and that it is much easier to move your objects around the "world" than to move the camera so that it provides the desired view of the objects. The camera angle can be modified in many ways, but it is much harder to do this than to move the objects themselves. We also had some trouble getting the lighting to do what we wanted, because we were using simple spot lights which create a lot of contrast and strong shadows. This made our diagram a little hard to understand, so we ended up using so radiosity lighting that Joe had designed for another project, which looks much better. This is the code we used to create the lighting: #declare RAD = on; global_settings { #if(RAD) radiosity { pretrace_start 0.08 pretrace_end 0.04 count 35 nearest_count 5 error_bound 1.8 recursion_limit 3 low_error_factor 0.5 gray_threshold 0.0 minimum_reuse 0.015 brightness 1 adc_bailout 0.01/2 }//radiosity #end //if }//global settings We also used a few area lights, which produce softer shadows. In order to create a sharp final image, we had to figure out how to use antialiasing in POVray. After doing a little searching around in the help menu, we found that you can manipulate antialiasing through the INI file settings. When you choose the Ini run setting, POVray gives you a number of options, including a command line where you can include different settings. In order to specify antialiasing, you can type either
Wednesday This morning I finished an example card I was making to show how vfolds can be used in the more artistic sort of card design that will be more often seen by children. It uses a sigle cut, creating two vfolds (one above the cut and one below it) to form the mouth of a bird. We will be taking pictures of this and a few other example cards later this week I think. This afternoon we made a few quick diagrams for the document, and then worked on figuring out how to create animations with POVray. It turns out that it was not actually that difficult to do. We decided to practice animations by rotating the image of the intersection of the sphere and the cone we created yesterday 360 degrees in the plane orthogonal to the x axis. This produced an animation that shows the top and bottom views of the objects, which can make the circle of intersection clearer. In order to create this animation, we first created a union of all of the objects we wanted to rotate using the
[160x120, No AA] Width=160 Height=120 Antialias=Off It specifies the image size and whether or not there will be antialiasing (AA). Find the block of code indicating the options you want to use for your animation. At the end of the code, add two new lines Initial_Frame = 1 Final_Frame = 5 These new line specify the number of frames that you will to produce when you run your code. Here, we will create 5 separate images. The number of frames can be changed as desired. This relates to the clock variable, because In POVray, unfortunately, you cannot export a series of images into a GIF file the way you can on Mathematica. In order to string our individual BMP files into a GIF animation, we had to use outside software. I found a program with a free 30 day trial online that is pretty easy to use, called GIF Movie Gear. All I had to do was choose the "insert frames" option and import all of the BMP images that I wanted to include in the animation. The program does the restall you have to do is hit the play button and you can see your animation. We're going to try to play around with the software a bit over the next few days, to see if it is worth buying the real version, which costs about $40. We are also thinking about trying to create a POVray animation in an MPEG file, which would have much better quality, but is not quite as webcompatible. We'll have to see.
Thursday
Today we decided that there were a number of ways that our animation could be improved, so we modified it a bit, changing the colors and dimensions to better prove our point. The final product is looking pretty nice. Did I mention that I love POVray? Next we started working on an animation that will display the intersection of the cone with the median plane of a rotary motion popup card. Didn't get too far.
Friday Today we worked on the median plane animation in POVray, and had a lot of difficulty describing the creation of the circle that traces the intersection of the median plane and the cone. What we want our animation to show is that as the median plane moves through the cone defined by the rotary motion of the vfold, the intersection is a quartercircle (or wedge, if you look at the entire intersection). In order to animate this in POVray, we must use the intersection of a thin torus and a wedgeshaped prism to draw something that looks like a portion of a circle on the median plane. This coordinates of the wedge were a little tricky to find, but our main problem now is that we cannot find the angle that determines how much of the circle should be drawn at each point in time. Initially, we thought that the quarter circle would be drawn at a constant rate, but it appears that this is not actually true. We cannot see how the rate of change of this anlge relates to anything else in our scenario, so we haven't yet been able to produce an accurate animation. 
Week 5:Tuesday Over the past two days we have been working on our median plane animation. In the meantime, Joe found some problems with the vfold animations that we did last week. It turns out that the point we were using as the center of the vfold was actually incorrect. We had to do some complicated calculations to fix it, but it wasn't too hard once we figured out what we had to change. These are the new animations: Once we had fixed this problem, we went back to our work on the median plane animation. We proved to ourselves that the halfcircle drawn by the median plane intersecting the cone is not created at a constant rate, and the angle definetly does not grow at the same rate as the median plane angle. We did not know how to figure out how this new angle relates to the rest of our card, so we decided to use mathematica to calculate the angles that we would need to create our animation. This turned out to be a little bit more difficult than we expected. Joe helped us by drawing a vector in our mathematica animation that lay in the median plane, and then calculated the angle between this vector an the vector tracing the rib of the cone. This is the angle we needed for our POVray animation. to be continued...
