# Torus knots on hyperboloids (part 2)

In the post Hyperboloidal Representation of Torus Knots we gave an explicit construction of T(p,q) torus knots and links where the knots are polygonal and the edges lie on two distinct hyperboloids of one sheet. As the knot is traversed, the edges alternate between lying on the first then the second hyperboloid. Each hyperboloid of one sheet is a doubly ruled surface (as described in the post Doubly ruled surfaces). For each of the hyperboloids the edges of the torus knot lie in one of the rulings.

The T(3,5) torus knot lying on two hyperboloids of one sheet.

I wanted to be able to create a 3D-printable model that showed both the T(p,q) knot and the two hyperboloids of one sheet. I used Cinema 4D to do this, and ended up making several attempts to get things just right.

The T(3,5) torus knot was constructed as described in the post Hyperboloidal Representation of Torus Knots. To sum up, the vertices were computed, then the knot was constructed in the standard way.  There are two relatively easy ways to construct the two hyperboloids of one sheet. In the computation for the vertices, we can find an explicit formula for the hyperboloids. We could parametrize a generating hyperbola curve for the hyperboloid, put it into the Formula tool, then use a Lathe tool to rotate the curve around the y-axis. (Remember that in Cinema 4D, the y-axis points up.)

The edges of the T(3,5) torus knot lie on these two hyperboloids of one sheet.

Rather than do this, I kept things simple. I added an Empty Spline, opened the Structure Manager, then added in the first three vertices of the T(3,5) torus knot. This created the first two edges of the knot. However, these had the wrong orientation – the vertices were entered for the standard xyz-orientation, not the orientation in Cinema 4D. I thus went into Model mode, and rotated the vertices 90o in the y-direction. I then added a Lathe and moved the Spline under the Lathe. (The reason why this works can be found in the post Doubly ruled surfaces – the formulas explicitly show that you can take one line segment in a ruling and rotate it around the z-axis to create the surface.) At this point the surface had many obvious edges. I went back into the Spline and edited the Object Properties: the Type is Linear, the Intermediate Points is Uniform, the Number is 50. (For some reason Bezier gives a bad looking surface.) I went back into the Lathe and edited the Object Properties. Here I increased the Subdivision to 50.

One of the errors I first made when constructing this surface was to take the coordinates of the vertices of the T(3,5) knot from the 3D printable model. This was a mistake, as the original vertices had been replaced by two nearby vertices for the Chamfer at the corners. This meant the two hyperboloids of one sheet where not correct.

The T(3,5) knot on the two hyperboloids of one sheet.

At this point, we can put the object in a better form for 3D printing. One of the adjustments I made was to scale the hyperboloid surface up slightly. When 3D printed, the top and bottom edges of this surface end up each print as one single filament. This can be problematic to print. So increasing the size of the surface slightly gives a bit of wiggle room.  I used the Boole tool (A union B)  to join the hyperboloid surface to the knot. In order to even see the union of these two surfaces, I needed to turn off High Quality in the Object Properties of the Boole. I also created one object from the Boole by going to the Object menu of Objects and then “Current State to Object”. On the new Boole that was created, I selected  “Connect objects + Delete”. I’m not sure these last two steps are entirely necessary. I’ve noticed that the slicing programs for 3D printers are increasingly sophisticated and are able to handle objects that aren’t completely correctly triangulated much more easily than in the past.

The hyperboloid surface without the T(3,5) torus knot.

Finally, I wanted to be able to 3D print the knot in one color and the surface in a different color. I went back into Cinema 4D and created several files. The first was the knot, the second was the surface without the knot. I created this using the Boole tool and the “A subtract B” option. I then printed the surface and the knot on an Ultimaker 5 printer. I had trouble printing this surface as the printer added in unnecessary supports. This is a work in progress! I’ll post an update with a correctly printed knot when we make it happen.

# Doubly-ruled surfaces

An example of a hyperboloid of one sheet.

Some of the most interesting quadratic surfaces are the doubly-ruled surfaces: the hyperboloid of one sheet (like x2+y2-z2=1)  and the hyperbolic paraboloid (like z=x2-y2). These surfaces have made an appearance in this blog previously when we discussed how to create good 3D printable models of these surfaces.

An example of a hyperbolic paraboloid.

Ruled surfaces have been studied extensively in geometry. Formally, a ruled surface is a surface which is a union of straight lines. The straight lines are called rulings (or the generators) of the surface. An example to think about is a cylinder: this is a union of straight lines, each of which intersects a circle. Just as with the circle and the cylinder, in a general ruled surface there is a curve in space which intersects each of the lines. Thus the surface can easily be parametrized as follows. Let g:(a,b)->R3 be a parametrization of the curve on the surface, let vt be a vector at point g(t) which points in the direction of the line passing through g(t). Then the surface is parametrized by f:(a,b)x(c,d)->R3 defined by f(t,s) = g(t)+svt.

A helicoid. Image from https://minimalsurfaces.blog/

A nice example of such a surface is the helicoid where lines parallel to the xy-place pass through each point of a helix (for example parametrized by g(t)=(cos(t), sin(t),t)). One possible parametrization of a helicoid is f(t,s) = (s.cos(t), s.sin(t), t).  Ruled surfaces are very familiar to us, if the rulings are all parallel to each other, then the ruled surface is a generalized cylinder. For example, the surface given by y=x2 in R3 is a generalized cylinder parametrized by f(t,s)=(t,t2,s).

The two rulings on a hyperbolic paraboloid surface.

Now there are surfaces which are doubly-ruled surfaces, meaning that each point of this surface belongs to two distinct lines. In other words, this surface has two distinct rulings. You can use projective geometry to show that this surface, the plane, and the hyperboloic paraboloid are the only surfaces that have this property. Robert Byrant has a nice proof of this fact using differential geometry in a 2012 Math Overflow post

Let us focus our attention on the hyperboloid one sheet given by  x2+y2-z2=1.  To give explicit equations for the two rulings, I will follow the text Elementary Differential Geometry by Andrew Pressley. For every t, we can show the straight line Lt given by $(x-z)\cos t=(1-y)\sin t, \ \ \ (x+z)\sin t = (1+y)\cos t$ lies on the surface. To see this, multiply the two equations together to get $(x^2-z^2)\sin t\cos t =(1-y^2)\sin t\cos t.$ in other words x2+y2-z2=1 unless cos(t)=0 or sin(t)=0. If cos(t)=0, then x=-z and y=1, and if sin(t)=0 then x=z and y=-1, and both of these lines lie on the surface. A short computation reveals that for each t,  line Lt contains the point (sin(2t),-cos(2t), 0) and is parallel to the vector (cos(2t), sin(2t), 1). We thus get all lines in one ruling for t in [0,π).

One set of rulings on a hyperboloid of one sheet.

We now show that any point on the hyperboloid lies on one of these lines. Take a point (x,y,z) on the surface x2+y2-z2=1. If x does not equal z, then let t be such that cot(t) = (1-y)/(x-z). If x does not equal -z, then let t be such that tan(t) = (1+y)(x+z). In both cases the point is on Lt. The only cases left are the points (0,1,0) and (0,-1,0). But these points lie on the lines Lt when t=π/2 and t=0 respectively.  In addition, we can check that the lines in this ruling do not intersect. Suppose (x,y,z) lies on Lt and Ls and t does not equal s. Then $(1-y)\tan t = (1-y)\tan s, \ \ \text{and} \ \ (1+y)\cot t = (1+y)\cot s.$ Assuming the tan and cot functions are not zero or undefined gives both y=1 and y=-1, a contradiction. The case where t=0 and s=π/2 give disjoint lines too: $L_0(t) = (t,-1,t) \ \ \text{and} \ \ L_{\pi/2}(s)=(-s,1,s).$

What is the other ruling? For every t, we can show the straight line Ms given by $(x-z)\cos s=(1+y)\sin s, \ \ \ (x+z)\sin s = (1-y)\cos s$ lies on the surface. The computations are almost identical, so we omit them. Each point of the surface lies on a line in Ms and the lines in this ruling do not intersect.

The second set of rulings on a hyperboloid of one sheet.

Another computation shows that if t+s is not a multiple of π, then Lt and Ms intersect in the point $\left( \frac{\cos(t-s)}{\sin(t+s)}, \frac{\sin(t-s)}{\sin(t+s)}, \frac{\cos(t+s)}{\sin(t+s)} \right).$  For each t in [0,π), there is one s in [0,π) such that t+s is a multiple of π, and the lines Lt and Ms do not intersect. Intuitively, the two lines are on opposite sides of the hyperboloid of one sheet.

There are many other interesting observations to be made about these surfaces. For example, any set of three skew lines generates such a surface and the three skew lines lie in one of the rulings. Ian Agol posted a nice proof of this in the same 2012 Math Overflow post.

# Five Intersecting Tetrahedra

One of my favorite mathematical models is the Five Intersecting Tetrhadra model. I first became aware of this model from Thomas Hull, a mathematician at Western New England University. He has written extensively about mathematics and origami (check out his book Project Origami). In particular he has written fantastic instructions for creating this model using modular origami.

The five intersecting tetrahedra model is based on the dodecahedron. This one of the five classic regular polyhedra consisting of 12 pentagonal faces and 20 vertices. Take 4 vertices in the dodecahedron which are the same distance apart. These form the 4 vertices of a regular tetrahedron, as shown on the right (figure from Tom). Since the dodecahedron has 20 vertices, we can inscribe 5 such tetrahedra inside the dodecahedron.

The origami version comes about by making a thin frame for each tetrahedron. Provided the frames are thin enough, they won’t intersect each other. Instead they will form a marvelous interwoven pattern. As shown on the left, I have successfully followed Tom’s instructions for making the origami version of this model.

The next natural question is whether or not the model can be 3D-printed. The answer, is of course, yes! I used crsfdr’s model Interlocking Pyramids  from Thingiverse to print the model on the UPrint SE printer at W&L.  The photo at the top shows the finished version. The one to the right shows the model just out of the printer before the supports have been removed. Since the supports are made of a material that dissolves, the UPrint was the perfect printer for the job.

My colleague Professor Michael Bush has used the Five Intersecting Tetrahedra model when teaching introductory Group Theory to undergraduate students. Indeed, this was the motivation for 3D-printing the model as the origami version is not really robust enough to use in a classroom setting. The model is a great tool for discussing the rotational symmetries of the dodecahedron (or its dual the icosahedron). Roughly speaking, the rotational symmetries of the dodecahedron act in a natural way on the five tetrahedra giving a permutation representation of the symmetry group. After some noodling around this allows one to see that this group is the alternating group $$A_5$$. (Michael usually suppresses details about the faithfulness of the representation at this level.)

# Crocheted Hyperbolic Planes

Two posts ago, I described my wonderful visit to the Double Helix STEAM school in Athens GA. My goal was to explore hyperbolic planes with the students. They can be hard to understand and visualize, so I thought I’d write another post with some further musings.

Take a piece of paper, and place the it on a flat surface like a table (or wall or board, or something). Notice that each point on the paper is above exactly one point on the table. Now take a ball (or something round – like the top of your head). Try do do the same thing with the paper. What do you notice?

You will notice that the paper needs to be creased in order for it lie smoothly against the ball. If you want to have exactly one point on the paper above one point on the ball, then you will need to remove some paper. The crocheted hyperbolic plane shown above is the exact opposite. There is “too much” plane for the paper. In order to have exactly one point on the paper above one point on the hyperbolic plane, then more paper needs to be added.

It is this idea of removing and adding paper that allows us to construct  paper models which approximate spheres and hyperbolic planes. The plane can be thought of as being tiled by hexagons, like a honeycomb. Now, replace one of the hexagons with a pentagon. If you keep doing this in the right way, you’ll end up with a soccer ball shown on the left below. There, each pentagon is surrounded by hexagons. Since hexagons have been “removed” (in comparison with the planar honeycomb), the surface curves inwards and around creating a spherical shape. If, on the other hand, you replace a pentagon with a heptagon (7-sides) and surround it by hexagons, then “extra” hexagons have been added.  The surface will open up and will approximate a hyperbolic plane, as shown below on the right.

The mathematical notion of intrinsic curvature is what lies behind these shapes. Spheres have positive curvature, planes are flat (zero curvature), and hyperbolic planes have negative curvature.  Many people have written wonderful explanations of these ideas. I’d like to just focus on just one consequence. At the end of this post I’ve included a list of resources where you can read more.

Let’s start by thinking about flat surfaces and traditional Euclidean geometry which we all learned (and forgot!) in school. There we learned that the angle sum of the interior angles of a triangle is $$180^\circ$$. That is $$\angle A+ \angle B + \angle C=180^\circ$$, as shown on the right in the figure below. In order to understand what happens on other surfaces, we need to understand triangles. These are geometric figures where three points, the vertices, have been joined by three straight-lines or geodesics.

On the sphere, it turns out that “straight lines”, or geodesic lines, are sub-arcs of great circles. These are circles formed by the intersection of the sphere with a plane through the center of the sphere. For example, if we think of the earth as a sphere, then the equator and lines of longitudes are all examples of geodesic lines. However the other lines of latitude are not geodesic lines, since they are the intersection of the sphere/earth with planes that do not go through the center of the sphere. In the figure above, you can see a spherical triangle with one side part-way around the equator and the other two from the north pole to the equator. Angles $$\angle A$$ and $$\angle C$$ are both $$90^\circ$$, and $$\angle B$$ is also $$90^\circ$$. This means that $$\angle A + \angle B + \angle C = 270^\circ>180^\circ$$! Indeed, for any spherical triangle the sum of the interior angles is bigger than $$180^\circ$$, that is $$\angle A + \angle B + \angle C >180^\circ$$.

Can you see that the red spherical triangle bounds two areas? (One smaller obvious one, and the larger one on the rest of the sphere.) Can you work out what is the largest possible sum of interior angles of a spherical triangle? It turns out that small spherical triangles approximate planar triangles, so their interior angle sum is close to, but still greater than $$180^\circ$$.

What about hyperbolic triangles? Turns out you can create them on a  crochet model by sewing straight lines for the triangle sides, as shown on the left.  Hyperbolic triangles are “skinny”; the sum of the interior angles is less than $$180^\circ$$. In the triangle shown below, you can clearly see the interior angles are small and their sum is much less than $$180^\circ$$. As in the spherical case, small hyperbolic triangles are approximately planar; here the interior angle sum is close to, but still smaller than $$180^\circ$$. Amazingly, the area of hyperbolic triangles whose vertices approach infinity is finite. The proof of this result can be found in any undergraduate textbook on hyperbolic geometry.

I promised to include some references, and here they are.

Two of my favorite undergraduate texts include:

Post Script: When crocheting these hyperbolic planes I weighed out three balls of the same yarn in different colors. Since the length of yarn was approximately the same, the number of crochet stitches were approximately the same, and hence the area made was the same.  Pretty amazing to think that the blue area and the green area around the edge are the same! It just shows how much extra fabric is created as the hyperbolic plane is crocheted.

# Visiting Double Helix STEAM school.

At the end of April I headed down to Athens Georgia to visit my friend and collaborator Professor Jason Cantarella at the University of Georgia, Athens. While there I had the opportunity to visit the Double Helix STEAM school and talk with the students about Different kinds of geometry, in particular hyperbolic planes.

We started by discussing planes, spheres and the hyperbolic crocheted planes I bought. We talked about triangles and the interior angle sums of the different triangles ($$180^\circ, \, >180^\circ,\, <180^\circ$$ respectively). The students found the idea of great circles and spherical triangles pretty mind blowing, especially when I gave them an example of a triangle with three $$90^\circ$$ angles. However, they were quickly on board and immediately suggested spherical triangles with even larger internal angle sums.

We then talked about the way a plane can be tiled with hexagons, and then how a soccer ball is made by switching out a hexagon (6-gon) with a pentagon (5-gon).  Since there is less material, the surface has the positive curvature of a sphere. A model of a hyperbolic plane can be made when a hexagon is replaced with a heptagon (7-gon).  The extra material gives the negative curvature of the hyperbolic plane. The Institute for Figuring has some great information about this model and has instructions for building one too. We used these instructions to build our own hyperbolic planes.  The students used scissors and sticky tape to construct their models. They were awesome!

# Soap film frame for the Schwarz P surface

In an earlier post on the mathematics of the Schwarz P surface, we saw how minimal surfaces can be understood by viewing them as soap films. The final challenge was to construct a 3D printed soap film frame for the Schwarz P surface for the Taping Shape*  exhibit at the Rueben H. Fleet Science Center.

From the way the Schwarz P surface is constructed, we know the boundaries of the 4-gons lie in the surface. Thus the surface has many straight lines lying in it. There are also many circles (really almost circles) lying in the surface. To construct a soap film frame in Cinema4D, I simply took these lines and circles and thickened them to get the frame. To prevent interior intersections of the tubes, I used the Boole tool ($$A\cup B$$) as I added in the lines and circles. In essence, this takes the “skin” of the two surfaces and ignores what is inside. The last time I used the Boole tool the surface vanished – it was too much for the program to render. However, by deselecting the High Quality option in the Boole options we were able to get the model to appear. I made three sizes of models: 6cmx6cmx6cm,10cmx10cmx10cm, and 15cmx15cmx15cm. I also made these sizes with two different tube diameters: 2.5mm and 3mm.

Printing the model was another question entirely. We had many fails (two shown below) before we figured out how to print the frame.

In essence, the unsupported parts of the model vibrate when the printer’s extruder is going over them. This leads to the frame being “fuzzy”, and even having visible jumps at some points. The solution was relatively simple. When printing, we selected to have the tubes print as a solid, and we also made sure the entire model had supports. The photo below on the left shows the supports for the uPrint SE print, the one on the right shows the 6cm size 3mm diameter frame printed by the MakerBot 2X replicator.

We found that when we dipped model in soapy water, the soap film gave a lovely approximation of the Schwarz P surface.

The frame has a lot of symmetry too. There are many interesting viewpoints, for example as shown on the right by a 10cm size 2.5mm diameter print by the uPrint SE. You can find the files for the model here on Thingiverse.

*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 .)

# Other Schwarz P surface prints

In the last post, I described how I designed a 3D printable Schwarz P surface unit for the Taping Shape*  exhibit at the Rueben H. Fleet Science Center. In the process of designing that surface, I made two other approximations of the Schwarz P surface. These did not end up in the exhibit, but making them was interesting.

When I was first looking at the Schwarz P surfaces, I found some great graphics on the web here.   I downloaded the .wrl file from there, then edited it in Cinema4D to get one Schwarz P cubical unit. It turns out that this apparently smooth model has an interesting triangulation. (You can select commands in a 3D modeling program to smooth out the edges when it is rendered.) I’m not exactly sure how the folks designed their surface, it is less smooth than my model, but is possibly more mathematically accurate.

As before, I extruded the surface by 5mm and added caps. I found I needed to clean up the rims of the surface, they weren’t level. To do this, I went into Point Mode, then selected the points along the rim. I then used the Set Point Value command (Mesh → Commands → Set Point Value) to set the appropriate $$x$$, $$y$$, or $$z$$ coordinates to be the same. After that, I adjusted some points by hand, and fixed some overlapping polygons near the rim. (By deleting a vertex or polygon as needed, then using the Close Polygon and Knife tools to fill in and tidy up the shape.) I then added in magnet holes as before. I made both a 6cmx6cmx6cm and 10cmx10cmx10cm size model. The figure above shows a comparison between my mostly smooth model and this version. You can find the files for the model, and instructions on how to place the magnets here on Thingiverse.

It turns out that the Schwarz P surface may be approximated by the level surface $$\cos(x)+\cos(y)+\cos(z)=0$$.  I created this surface in Mathematica, then downloaded it as a .wrl file.  I then imported that into Cinema4D. The surface had a very complex triangulation. After playing around for a bit, I worked out that the best thing to do was to optimize the surface once, then extrude the surface 5mm with caps.

Unfortunately, the surface needed a lot of editing! As seen on the left, parts of the surface extended outwards and needed removing. I went into Point Mode and simply deleted these pieces. Worse, there were parts of surfaces inside the model as shown below on the left. Many 3D printers won’t print objects with pieces inside like this. I removed these surfaces, by going into Polygon Mode and deleting them. Alas, tiny holes sometimes appeared in the surface afterwards, and needed to be filled. There were also many overlapping  or missing triangles as shown below on the right. I ended up going over the entire surface (inside and out) and fixing these problems. Some printers would have been able to ignore these triangles, others would not. Fixing these surfaces was a labor of love, but worth it in the end.

Once all the editing was complete, I added in magnet holes as before. I made both a 6cmx6cmx6cm and 10cmx10cmx10cm size model. I printed these on both the MakerBot 2X and uPrint SE printers, the 6cm size is shown below. You can find the files for the model, and instructions on how to place the magnets, here on Thingiverse.

*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 Schwarz P surface

The challenge: to construct a 3D printed Schwarz P surface piece for the Taping Shape*  exhibit at the Rueben H. Fleet Science Center, which could be joined to others to create a finite part of a Schwarz P surface. I’m not the first to do this,  Ken Brakke has already used his Surface Evolver program to create a beautiful and truly superior Schwarz P surface found on Shapeways.

With limited time before the exhibit, could we create a reasonable approximation of the Schwarz P surface using Cinema4D? We (Dave Pfaff and I) started by finding the minimal surface for a 4-gon with corners at the vertices of a regular octahedron. We then extended the resulting surface by 180 degree rotations about the straight boundary lines. This created a surface, but it was not quite right.  We needed to cheat a bit and make the 4-gon surface closer to a quarter circle in the middle. (The actual Schwarz P surface is not circular there, but is close.)

After using the Close Polygon tool on the 4-gon, we used the Subdivide command for the 4-gon, then moved vertices closer to the circle. We subdivided again, moved vertices closer to the circle again and repeated the process. We then rotated 12 copies of the 4-gon unit around various edges to get the figure to the left.

We then arranged 6 of these units in space, and added in a cube. We used the Boole command to cut out a cubical Schwarz P unit. I then extruded the surface, and added magnet holes as described previously in this post:

Joining models with magnets

I made two sizes of models: 6cmx6cmx6cm and 10cmx10cmx10cm. We printed the models on the uPrint SE printer. They printed just wonderfully. The one small flaw in the design is that there is a slightly raised line in the place where we moved vertices to the circular arc. However, the model has many strengths: aside from the line it is quite smooth, and you can almost (but not quite) see the 4-gons. Given the time restriction before the exhibition, we decided to leave the model as is.

To the left is some of the Schwarz P surface models printed for the Taping Shape exhibit.

You can find the files for the model, and instructions on how to place the magnets, here on Thingiverse.

*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 .)

# Schwarz P surface – the math

Minimal surfaces have been studied for over 200 years.  The research began when Joseph-Louis Lagrange asked a very simple question around 1760: “What does a surface bounded by a given curve look like, when it has smallest surface area?” This was a hard problem to study — roughly speaking, the mathematics of minimizing surface area leads to a partial differential equation of  the surface. The tools to study such equations had not yet been developed. In fact, the first mathematical conjectures about minimal surfaces were made from the careful observations of soap film by the physicist Joseph Plateau (published in 1873). Over the years many aspects of the problem have been solved, and most recently progress has been made using the tools of geometric measure theory.

When looking at at surface with minimal area, it turns out that smaller pieces of it must also have minimal area with respect to their boundaries. This means they must locally look like a saddle, not a hill nor a bowl (since we could reduce the area by chopping off the hill or filling in the bowl). Just like a saddle surface, minimal surfaces look the same from both of their sides. This makes sense when we consider soap films: the surface tension of a soap film is in equilibrium at every point, the forces pulling to one side must balance the forces which pull to the other side.

In differential geometry, the term mean curvature measures the bending of a surface at a point. For minimal surfaces, it must be zero. Mathematically speaking, minimal surfaces are defined to have locally minimal surface area — small pieces of them can always be realized as a soap film. This local definition means minimal surfaces are independent of the boundary problem, and so mathematicians are also interested in infinitely large minimal surfaces without boundary.

The Rueben H. Fleet Science Museum asked me to model a Schwarz P surface. This is a triply periodic minimal surface, meaning it has translational symmetries in three independent directions. The Schwarz P surface was originally described by Hermann Schwarz (1890) and his student Edvard Neovius (1883). More examples of triply periodic (and other) minimal surfaces were found by Alan Schoen in 1970. The Schwarz P surface is a genus 3 surface that fills space. It is part of a huge family of minimal surfaces, for example

So what does the Schwarz P surface look like? Imagine two interconnected thickened cubic lattices. The Schwarz P surface lies on the intersection of these thickened lattices. In the picture to the left, one lattice lies inside the yellow surface, the other in the spaces between it. (Thanks to the minimal surface archive at Indiana University for these pictures.)

It’s a tricky surface to visualize. Another way to see it is to first find the minimal surface for a 4-gon with corners at the vertices of a regular octahedron. Then extend this surface, by rotating copies of it by 180 degrees about the boundary lines. In the figure on the left you can see one such 4-gon in the center top. Imagine rotating it about one of the edges. Keep going. You can see parts of 6 copies of the 4-gon about the vertex in the figure. Now keep repeating this process. Eventually you get to the triply periodic surface shown above.

# 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.

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.

The 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.

Once 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.  I 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.

Finally, 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:  http://www.thingiverse.com/thing:1279118 and http://www.thingiverse.com/thing:1298073.

*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 .)