Joining models with magnets

Part of the design challenge for the models for the Taping Shape* exhibit, was to find a way to join them together. I was inspired by Jason Cantarella’s Decomposition of a Cube Manipulative which uses small magnets to join the pieces together. These magnets are 3mm (diameter) x 3mm (height) cylindrical rare earth magnets.

To make holes for the magnets I made a cylinder of height 6.4mm and radius 1.6mm. I knew I needed to use the Boole tool to create the holes. Most importantly, I had to make sure to that the holes perfectly aligned on different pieces. Cinema 4D has a wonderful Array tool, which I used to create an array of four cylinders centered at the origin. I adjusted the radius of the array until the cylinders were perfectly placed on the pair-of-pants model. The 6.4mm height of the cylinders allowed me to position the models above or below the array, so the height of each hole was precisely 3.2mm.

I then moved the different models (or the array) around the origin to get four holes perfectly placed in each rim of the pair-of-pants, ring and caps models.  The photo below shows the ring system for the pair-of-pants with the cylinder array ready for the Boole tool on the left. The ring on the right is ready to go.pants-ringAfter printing, I found that the magnets fit snugly and would not come out. If you are worried about this, Jason used a little JB Weld epoxy. (He suspects that you could also use superglue.)

Putting the magnets in was nearly impossible. However Jason’s magnet insertion tools were just awesome. They allowed me to seat the magnets into the little holes, and helped me keep track of which end of the magnet went where. I strongly recommend printing the \(+\) and \(–\) magnet insertion tools in different colors to help with this. I put down one tool to check a print, then picked the other one up instead, messing up the placement of the magnets. (I discovered the hard way that the magnets really don’t come out…)

For the pair-of-pants and caps models, I alternated the \(+\) and \(–\) ends of magnets around the rims of the pair-of-pants. I did this in a consistent way, for example the \(+\) was always at the front and back of the pants.  For the rings, the plain ones should be aligned the same alternating way on the top and bottom rims. The ones with plus/minus signs or 90 degrees should have the arrangement rotated by 90 degrees.

The end result? Models which snap together in a satisfying way. The reason for the rings should now be clear. Without them, the models connect in only two possible orientations. With them, the models can be snapped together in four different ways.


*The Taping shape exhibit is part of the InforMath project funded by the National Science Foundation (DRL-1323587).  (The InforMath Project is a partnership between San Diego State University and several museums at the Balboa Park, including the Rueben H. Fleet Science Center .)

Constructing a pair-of-pants

Constructing a pair-of-pants surface was easy and difficult all at once. I used Cinema 4D to create the surface. I did this by using the Subdivision Surface tool on a cube which I had extensively edited. The photos below show the image before and after I applied the tool.

pants-cube   pants-full

It took a long time to get the cube just right. I took a rectangular prism, then used the Knife tool to slice the top and bottom faces of the cubes. From there, I extruded both the top and the legs. To get the right shape around the middle, I used the Knife tool and the Close Polygon tool extensively. It was quite tricky to find the right shape for the legs, hip and waist of the pants. Roughly speaking, the Subdivision Tool takes midpoints of edges and faces, then moves these to a carefully defined weighted average. There is a nice Numberphile movie where the folks at Pixar explain this here.

pants-extrudeThe next step was to use the Boole Tool with cubes (in a number of different ways) to cut out the pair-of-pants in the middle, and the rounded caps at the ends. I then selected the entire pair-of-pants surface, and used the Extrude Tool with caps to thicken it by 5mm on the inside. I finished the pants by Optimizing (to make sure all the overlapping vertices were taken care of), and by making sure all the normal vectors were pointing outwards (so the surface would print). I repeated these steps for the rounded caps as well. The final objects looked great and printed easily on the MakerBot 2X printer with supports but no raft. You can see small holes for magnets in the rims of the pants. I’ll explain how (and why) I added these in the next post.

pair-pants-capsOnce I had the regular pair-of-pants figured out, I made a “bent” pair-of-pants as well. I simply took the edited cube used to make it, then edited it some more.  pair-pants-ringsI shortened the “waist” area of the pants, and lengthened the “torso” area, before extruding outwards. The dimensions of the “bent torso” square matched those of the squares for the legs. This ensured that the “bent waist” circle would match those of the legs. I also used the Knife and Close Polygon tools to make the bend at the waist less extreme. I then extruded, optimized and checked the normals of the surfaces as before.

IMG_4012Finally, I made a ring system for the models. This was easy to do — I simply took the regular pair-of-pants cube and extruded the legs out some more. Once I applied the Subdivision Surface tool to it, I got a pair-of-pants with extra long legs. I again used the Boole Tool with cubes, to get two rings. These were extruded and finished as before.

These models are currently on display at the Taping Shape* exhibit at the Rueben H. Fleet Science Center in San Diego, California. The pair-of-pants and bent pair-of-pants surfaces can be found on Thingiverse: and

*The Taping shape exhibit is part of the InforMath project funded by the National Science Foundation (DRL-1323587).  (The InforMath Project is a partnership between San Diego State University and several museums at the Balboa Park, including the Rueben H. Fleet Science Center .)

A new challenge

In December, I was contacted by Professor Ricardo Nemirovsky from San Diego State University to design 3D printable surfaces for the  Taping Shape* exhibit at the Rueben H. Fleet Science Center in San Diego, California. The exhibit runs from January 30 through June 12, 2016.

The exhibit contains a structure made out of packing tape with
three interconnected regions: a torus, a topological
equivalent to Schwarz P surface, and a pair-of-pants
surface with the legs twisted. The structure is large enough for visitors to walk and crawl through. There are three “work tables” (one for each region), with materials, suggested activities, poster displays, etc. The 3D printed models will be a part of the work table and displays.

Ricardo requested I make pair-of-pants surfaces with caps that can be joined together in different ways, Schwarz P surfaces that can be joined together, and also a frame that allows the Schwarz P surface to be created as a soap film spanning the frame. The challenge was on!

In the following blog posts, I’ll explain a bit about the math behind the surfaces, and how we figured out how to build and print them.

*The Taping shape exhibit is part of the InforMath project funded by the National Science Foundation (DRL-1323587).  (The InforMath Project is a partnership between San Diego State University and several museums at the Balboa Park, including the Rueben H. Fleet Science Center .)


Models have arrived!

IMG_3072Our 3D printed math models have arrived in the W&L Mathematics Department ready for the Fall semester. They are in labeled clear plastic containers right over the biz hub in the math work room, so everyone can easily get to them.

We are looking forward to seeing what people do with them in class this coming semester. In particular, if we get any more requests for builds or rebuilds.


MathFest 2015

Our summer build team attended the centennial MAA MathFest Conference in Washington DC. We had a wonderful time attending many talks, the exhibits and the evening entertainment. (Some of our favorites included the talks by Erik Demaine, Noam Elkies, and the Cirque de Mathematiques.)

IMG_2917    IMG_2914

Emily and Ryan gave a wonderful (and well attended) talk about their summer work. I spoke about our work in the What Can a Mathematician Do with a 3D printer? session organized by the inspirational Laura Taalman and Ed Aboufadel (below left).  Everyone who brought printed objects got to display them at the front of the room (below right).

IMG_2938    IMG_2927

Laura had her MakerBot mini printing before the session started. A small collection of her models was placed in front of it. Our models were right in front of Jason Cantarella’s 3D printed calculus robot Cy. They were very well received by everyone present.

IMG_2934     IMG_2935

Here are some of the wonderful models by Christopher Hanusa from Queens College CUNY (left), and Lila Roberts from Clayton State University (right).

IMG_2936    IMG_2931

Laura spoke about how she designed and printed the Catalan Wireframe Polyhedra, shown below. We were even lucky enough to each be given one by her! I’ve come away from the session with many good ideas of using 3D printing in the classroom, as well as designing new math models.



PS Printing in powder

One last post about the summer printing. We did end up using the ProJet 260 (gypsum) powder printer. We printed two objects – the solid Strange Bowl, and the Tumor Model. Both had colors added with help from Dave Pfaff. (There is a complicated color bit map involved.) The tumor model’s colors roughly correspond to the distance from the center of the model. While these models are beautiful, they are not as robust as some of our other models. They won’t go into general circulation, but instead will be in our display case.



What a summer!

surfaces-long-3Our summer research project has officially ended. Emily and Ryan have been phenomenal. Together, we’ve designed and 3D printed over 46 math models during the past 9 weeks. Given that our first week was spent working on the math and learning computer programs, we’ve averaged a little over 6 models a week. Phew! 

wedges-2      steinmetz

We also 3D printed models that other folks designed, which means we’ve well over 55 different models in total.

We are top-longall currently at the 2015 MAA MathFest conference in Washington DC. Emily and Ryan will be talking about their work in a student research session, and I will be discussing our work in a session on What can a mathematician do with a 3D printer? organized by the inspirational Laura Taalman and Edward Aboufadel.

wedges-longBefore I left to come to MathFest, I had W&L photographer Kevin Remington take some stills of just a few of our models in a professional light box. The results are fantastic. Many of these photos appear in Thingiverse, as well as my web page.

cropped-KRP_5585.jpgThese photos show: a few of the quadratics surfaces we designed and printed; the strange bowl family; some of our ”sliced” volumes; and the part of a helicoid, the “Bulge Head” solid, and Voronoi Klein Bottle.

 strange-bowls top-long-2



3D printing with liquid

The neat thing that we’ve been doing in the past couple of weeks is to use the FormLabs Form 1+ liquid resin printer. It is just so cool!

liquid-printer7   liquid-printer2

StrangeBowl-allThe first objects we printed were the strange bowls (shells, washers and smooth). Previously we tried to print them on the MakerBot 2X, but the sheer number of supports meant the print was not a great success. However, the FormLabs printed them beautifully. We all loved watching the bowls slowly come out of the liquid resin.

We next printed was the Bulge-Head solid. It is one of our favorites!

bulge-head-3    bulge-head-2

top-longFinally, we had great success printing parametric curves and other surfaces with the liquid resin printer.

Parametric Curves: Spiral, Self-Intersecting Curve, and Helix

spiral_on_cone-2I then made a series of models of parametric curves. The first was a model of a spiral that increases in diameter as it travels along the \(z\)-axis.  The curve comes from Section 10.7 in Stewart’s Essential Calculus.  The curve is defined by the equations \(x=t*\cos(t), y=t*\sin(t)\), and \(z=t\).  I designed the model in Cinema 4D using the Formula Spline to draw the curve, the Sweep NURB to give the curve depth, and the Wrap Tool to wrap the text around the curve.  I also used the Extrude Tool to give the equations depth and the Boole tool to connect them with the curve.  The print failed a few of times due to a tangled filament and a jammed extruder, but it worked after the fourth try.  The result was that the equations looked messy and the letter \(t\) is hard to make out in places.  Also, the MakerBot did not include supports for the last rotation, which caused the print to be messy towards the vertex of the spiral.  We remedied these issues by printing another version of the spiral on the Formlabs printer, where we imprinted the equations into the object.  The print came out much better as the equations were neater as was the end of the spiral. This model can be found on Thingiverse.

I used the FormLabs printer to create a model of a space curve from Stewart’s Essential Calculus (Section 10.7, exercise 18).  The first challenge was to draw the object in Cinema 4D without a self-intersection (3D printers do not accept intersecting geometry).  Professor Denne suggested that I make two half-curves that intersect, then make a Boolean out of them.  The suggestion worked, so I was then able to put text onto it.  It was tricky to figure ouself-int-curve-3t how to get the equations onto the curve, but I decided to put them on top of the lower ring of the model.  They turned out well, as did the curve, which was very smooth and with minimal deformation due to its supports. You can find this model on Thingiverse here.

My next print was of a helix on the Formlabs printer.  I first printed a Black one with a radius of 2 mm, but it turned out to be very small and frail, and the equations were hardly legible.  I then fixed these issues by making the radius 4 mm, but the equations are again hard to read because of the white resin. This model can be found on Thingiverse here.

Our experience has taught us that equations are easiest to read on the FormLabs prints in grey. You can find instructions on how to use Cinema 4D to add equations to parametrized curves here.


Torus Knots

I modeled the trefoil knot as two torus knots \(T(2,3)\) and \(T(3,2)\). The parametric equations for a \(T(p,q) \) knot are \(x = \cos(pt)*(3+\cos(qt)), y=\sin(pt)*(3+\cos(qt)) \), and \(z=\sin(qt) \). Here, \(p\) is the number of times the knot winds around the longitude of a torus, and \(q\) is the number of times the knot winds around the meridian of a torus.

2-3-torus-2Both models were printed on the FormLabs printer. I first made a small \(T(2,3) \) knot with a label extruded out of the curve (as shown to the left). I used Cinema 4D to design the model by using the Formula Spline to draw the curve, the Sweep NURB to give the curve depth, and the Wrap Tool to wrap the text around the curve. I also used the Extrude Tool to give the equations depth and the Boole Tool to connect the equations to the curve. For both knots I had to make sure the ends of the knots overlapped correctly. Before printing the \(T(3,2)\) knot, I had to change the range of \(t\) to \(t=[0, 2\pi] \) instead of \(t=[0, 5\pi]\) (I initially used \(5\pi\) to be sure that the curve closed).

3-2-torus-2The first \(T(2,3)\) knot came out nicely, however the text was a little small. Using the subscript made the numbers too small, so I reprinted the knot used parentheses instead, as shown here. The \(T(3,2)\) knot also looked great, as it was smooth and there were merely small nubs where the supports were, which could be removed with an exacto blade. We’ve discovered that the FormLabs printer makes smoother surfaces and finer curves than does the MakerBot, which is why it is ideal for printing knots.

You can find the torus knots on Thingiverse here T(2,3) and here T(3,2). Instructions on how to make torus knots in Cinema 4D can be found here. Professor Denne has also created another worksheet in Mathematica about Torus knots. It can be found here.