Parametrizing Petal Projections

Written by Keally Rohrbacher and Sawyer Dunn-Matrullo (students in Math 383D Knot Theory Spring 2023).

Image showing a petal projection of the trefoil knot.

Figure 1: Trefoil knot petal projection.

Our plan was to create models of knots with petal projections. This is a particular type of diagram of knots that has only one crossing, and a certain odd number of arcs which cross each other there. For example, Figure 1 shows the petal projection of the Trefoil Knot (image from Wikipedia). The numbers written on the arcs in Figure 1 are important, as the order in which the knot crosses through itself is what distinguishes different petal projections of knots from each other.

We wanted to produce 3D models of the 41, 52, and 61 knots, all of which have petal projections (shown in the figures below).

ide view of the petal projection of the 4_1 knot.

Figure 2: Side view of the petal projection of the 4_1 knot.

Since it is not important what the actual picture of the petal projection is, just that it crosses through the center in a particular order, we had some choice as to how we were doing to construct these knots. We decided that it would be interesting to construct these as parameterized functions. We knew that we could make the x and y-components of this function fairly easily using a rose curve, a type of polar function which produces a cool rose that looks just like the petal projection in 2D. So, we knew that all we had to do was come up with a function for the z-axis which would parametrize the rose curve to go around and hit the center at certain heights to produce the petal we wanted. We knew which order the strand should go through the crossing in for each knot from the paper “Knot Projections with a Single Multi-Cossing” by Colin Adams and his coauthors.

Top view of the petal projection of the 4_1 knot.

Figure 3: Top view of the petal projection of the 4_1 knot.

We considered a couple ideas for finding a function that would hit these particular heights, but ultimately decided to try to find a polynomial function.

Side view of the petal projection of the 5_2 knot.

Figure 4: Side view of the petal projection of the 5_2 knot.

We did this by creating points with the heights we needed to hit at even intervals and plugged these points into an online calculator which uses Lagrangian interpolation to produce a polynomial which hit all of these points. Once we defined this as the z-component for our function, and used the rose curve for the x- and y-components, we plugged our curve into a 3D graphing calculator called GeoGebra. The side views, in figures 2, 4 and 6 (above and below), depict these heights being hit in proper order in accordance with the Adams’ paper. The top views in figures 3, 5 and 7 show the petal projection shape of the rose curve projected to the xy-plane.

Top view of the petal projection of the 5_2 knot.

Figure 5: Top view of the petal projection of the 5_2 knot.

We ran into a couple issues during this project. The most annoying of which was trying to define our curve as a parametrized function in Cinema 4D.

Side view of the petal projection of the 6_1 knot.

Figure 6: Side view of the petal projection of the 6_1 knot.

Because we had to hit so many points, the function on the z-axis ended up being a degree 11 polynomial for both knots. And while we were able to produce this on GeoGebra, a powerful calculator, we could not make a satisfactory spline of our function in Cinema 4D. We spent a long time trying to fix this problem by manipulating points on the software. We were exasperated to find that we could simply download an .stl file directly from GeoGebra, where we already had constructed the knot, circumventing our entire issue. (Note that 3D printers use .stl files as their start point.) This made its own set of issues, however, as the shapes from GeoGebra were not smooth. But, for our final print of the knots, we also graphed the curves on Mathematica like we did in GeoGebra, again avoiding the issue of plotting a curve in Cinema 4D and Mathematica gave us models with much smoother curves.

Top view of the petal projection of the 6_1 knot.

Figure 7: Top view of the petal projection of the 6_1 knot.

The most challenging part of coming up with our functions though was creating and working with high order polynomials, but this mostly just involved us typing out long equations many times. We found that WolframAlpha easily came up with the required higher order polynomials for the 61 knot (which ended up being a degree 14 polynomial).

Flowering 3D Models

Written by Claire Gilreath. Joanne Wang, and Selihom Gobeze (students in Math 383D Knot Theory Spring 2023).

Building Petal Knots in Cinema 4D

Once we had found all of our coordinates for our petal knots, we were excited to actually build the knots in Cinema4D! Of course, this was not without its challenges. We started with 3_1. Our first step was to to import our points to a spline. Naturally, we ran into issues here because we were not aware that the points from the first row are read as the x, y, and z labels, so the data is not actually imported. We fixed this by editing our .txt file to include a row of 0s at the top. Also, one of the points was incorrect and we had to go back to WolframAlpha for a quick fix (this happened a couple of times throughout the process).

Image showing the petal version of the trefoil in Cinema 4D

This is the petal trefoil knot made in Cinema 4D.

At this point, we were not aware that we needed to connect the last point to the first point, so we skipped that step and decided to try the Spline Smooth tool to round out our polygonal edges. We found that the result was not as uniform as we had expected but we decided to keep going to see what would happen after the sweep. We made a circle and decided to set the radius at 0.25cm in order to avoid self-intersections but give the model enough structure to support itself. Then, we made the sweep and looked at our slightly wonky 3_1 knot. We realized that the ends were not connected so we used stitch and sew to fix that (this was a result of failing to connect the last two points of the spline). To the right is our final improved 3_1 knot.

Image showing the petal 5_1 knot in Cinema 4D.

This is the petal 5_1 knot made in Cinema 4D.

We moved on to the 5_1 knot and followed the same procedure. Once we had built it, Professor Denne looked at our slightly wonky 5_1, and suggested we try to use Chamfer tool instead of the Spline Smooth tool to make the model look smoother and more uniform, with less harsh edges of the petals. In doing this, we discovered that our last point vanished when we tried to Chamfer. We realized that we needed to close the spline by deleting our last point at (0,0,0) and using the Spline Pen to connect the first point to the last point to close the gap. We set the radius of the Chamfer to 3cm and compared our new 5_1 to the wonky one. We decided we liked the Chamfer version better and fixed our 3_1 the same way. This time we set the radius to 5cm, which we found looked much smoother and decided to stick with that for all knots. Our completed 5_1 knot is pictured above.

Image showing the petal 6_2 knot in Cinema 4D.

This is the petal 6_2 knot made in Cinema 4D.

We repeated this same process with 6_2, expecting everything to be a lot easier now that we had solidified our methods. However, this was not the case. As we rotated around the knot after sweeping, we noticed that we had a self-intersection at one point and two strands that were concerningly close together. Though we’re not entirely sure why this happened, we think the Chamfer forced the two strands too close together. We first tried to make the radius of the circle inside the sweep smaller, but the strands were still touching at 0.17cm, so we decided to manually pull the spline points apart after the Chamfer but before the sweep. This fixed our problem and everything looked good after the sweep this time. Our completed 6_2 knot is pictured above.

As we built 6_3 we were worried about self-intersections, since the (x,y) coordinates were the same as in 6_2. We did not run into any problems this time, perhaps because of the different heights. Below is a picture of 6_3 from four angles, showing the “nice” petal view as well as the less attractive side views.

Different views of the petal 6_3 knot made in Cinema 4D.

Different views of the petal 6_3 knot made in Cinema 4D.



Trig Trials

Written by Claire Gilreath. Joanne Wang, and Selihom Gobeze (students in Math 383D Knot Theory Spring 2023).

Finding the Coordinates of Petal Knots

We decided we wanted to try to 3D print the petal projections of knots for our project because they looked pretty and seemed like a challenge.

Image showing the trefoil knot in petal form.

A petal projection of the trefoil knot.

Petal projections of knots are projections where all of the crossings are aligned through a single line in 3d space, giving the knot a flower-like appearance. A two-dimensional petal projection of the trefoil (3_1) is pictured to the right (via this image from Wikipedia). We decided to work on creating petal versions of 3_1, 5_1, 6_2, and 6_3 knots. We relied heavily on the work described in Colin Adams’ “Knot Projections with a Single Multi-Crossing” paper. In the appendix of this paper, Adams and his coauthors described the order of each petal for the knots we hoped to construct. Also, we utilized the Wikipedia page  about petal projections of knots to better understand their structure.

We were a bit uncertain of the best method to create these knots, since as far as we knew, there were no equations we could plug into Cinema 4D, nor were there coordinates constructed by someone else. After talking to Professor Denne, we felt that our best bet would be creating our own sets of coordinates using trig and polar coordinates. We decided to find four points per petal: the center, the top of the arc of each petal, and the end of both edges. To do this we constructed a circle through the ends of the edges, shown in red in the diagram of the trefoil below.

This figure shows the details behind the computations needed to find the coordinates of points along the petal trefoil knot.

This figure shows the details behind the computations needed to find the coordinates of points along the petal trefoil knot.

We then found the angle between each of the edges using the formula Pi/(number of petals), so for the trefoil, we had Pi/5. The length of each red edge was the radius of the circle, r, which we determined in a later step after finding the heights. Next, we added lines from the top of each petal to the center of our circle, shown in green, and found the angle between these lines using the formula 2Pi/(the number of petals), this was 2Pi/5 for the trefoil. To find the length of the green lines, we treated the curved part of the petal as a semicircle and found its radius by finding the length of the chord between the two red edges and dividing by 2. We then found the length of the other piece by using the Pythagorean theorem and added both measurements together. These calculations are shown in purple in the diagram above, where the length of the green line is given by the following formula: the square root of (r2.-(r*sin(Pi/5))2) plus r*sin(Pi/5). Using trig, this is r(cos(Pi/5)+sin(Pi/5)). We called this quantity x as we labeled the points of the trefoil in the diagram above.

The next step was to find the heights of each point and then convert everything into Cartesian coordinates in order to have points that Cinema4D could understand.

Image of the petal trefoil knot with details of the heights of the points.

This figure shows the heights given to the points on the petal trefoil knot.

We used the orders from the last page of Adams’ paper which gave us the heights for the edges at (0,0). We also assigned heights to the points we found by averaging the heights of the edges to find the height for the top of the petal. We then averaged the height of the top of the petal and the edges at (0,0) to find the height of the end of each edge. For the trefoil, we came up with the heights to the right and then scaled them up by 1.5, so our model would be a bit larger after printing. This also guided our decision to make the radius of our circle (r) be 3 for 3_1 and 5_1. We used r = 3.5 for 6_2 and 6_3.

 At this point, we had found the polar coordinates for all of the points we wished to plot in Cinema4D, so we converted them to decimal approximations with the help of WolframAlpha. The Cartesian coordinates of 3_1 are shown in the table below. We followed a similar process for 5_1, 6_2, and 6_3 knots. Points completed!

Vertex x y z
1 0 0 6
2 -0.927050983 2.853169549 4.875
3 0 4.19040674 3.75
4 0.927050983 2.853169549 2.625
5 0 0 1.5
6 -0.927050983 -2.853169549 2.25
7 -2.463059283 -3.390110266 3
8 -2.427050983 -1.763355757 3.75
9 0 0 4.5
10 2.427050983 1.763355757 3.375
11 3.985313636 1.294906896 2.25
12 3 0 1.125
13 0 0 0
14 -3 0 0.75
15 -3.985313636 1.294906896 1.5
16 -2.427050983 1.763355757 2.25
17 0 0 3
18 2.427050983 -1.763355757 3.75
19 2.463059283 -3.390110266 4.5
20 0.927050983 -2.853169549 5.25
21 0 0 6