Making 3D Printed Flowers from Polar Graphs

This year, I decided to decorate my classroom/office with hanging 3D printed “flowers” that are made from graphs of polar equations.  I am also excited to do this activity with my Pre-Calculus students when we get to polar equations in February.  For now, I made my own flowers.  They look like this:

Polar Flowers

I created my graphs in Mathematica and prepared them for printing with Tinkercad.  Since not all teachers have access to Mathematica,  I also figured out how to create these same flowers in GeoGebra.   I tried with Desmos and had some issues.   The end of this article outlines the GeoGebra, Mathematica, and Tinkercad procedures.  I also quickly discuss what happened when I used Desmos.

How long does this take?  Some of my bigger flowers took about 2-3 hours to print, while the smaller ones took 40-60 minutes.  Once I figured out and mastered the process to create a flower, I could create one and have it ready to print in 15-20 minutes.

How will I turn this into a project for my students?  Once we graph some polar equations, I will give students a day or two to create their own equations and explore any patterns that they observe.  When students find interesting patterns, they become motivated to help each other figure out what is causing the pattern.  Their enthusiasm is contagious!  I’ll ask them to turn one of their favorites into 3D printed artwork, such as a flower.  I’ll also ask them to write a quick reflection about what they observed and learned in this activity.  Giving students free rein AND a 3D printed object that they can keep makes the learning more fun, memorable, and student-centered.

What kind of filament did I use?  I printed with PLA filament in green, orange, yellow, and purple.  But if you only have white, just go with it!

Directions for creating the flowers are below.  My next post will describe how I introduce 3D printing to my freshmen Honors Geometry class.  Have a great week, and let me know how this activity works if you try it!

Directions with GeoGebra & Tinkercad (BOTH ARE FREE)

I used the GeoGebra Graphing Calculator.  I tried LOTS of different settings/file type combinations in GeoGebra before I found a method that worked:

  1.  Enter the equation for your graph, such as r = sin (2θ), to get a polar graph like this:graph1
  2. Click on the gear in the top right corner of the graph.  UNCHECK Show Axes. Click on Show Grid and change it to No Grid.   settings on graph 2
  3. Right click on the graph and choose Settings.  On the Style tab, change the Line Thickness to the maximum value (13).  Change the Filling to Hatching, and change the Spacing to the minimum value (5).
    graph settingsClose this window so that you see a solid-filled graph on a white screen:final geogebra image
  4. Use the menu on the top left of the screen to select Download as -> png.
    download settings
  5. Tinkercad needs the file to be in SVG format.  I used a free online converter to convert the PNG file to SVG format.  In the converter:  choose your file, scroll down and click on Convert File, then download the SVG file to your computer.Note for those scratching their heads as to why I didn’t export an SVG file right from GeoGebra: I tried this many times.  No matter which settings I chose for the graph (line thickness, hatching style, no fill, etc.), the file imported into Tinkercad as either a solid block with some sort of hole in the middle, or as a discontinuous jagged-edged outline that would not print well.  
  6. Your work in GeoGebra is finished;  it’s time to open Tinkercad. Create a new object and select Import.tinkercad export
  7. Choose the SVG file you just created.  If you get a red error message like I did below, alter the scale (I used 20%).
    clover import
  8. Your imported file should look something like the image below.  If your flower is too big, use the Tinkercad keyboard shortcuts for 3D Scaling to scale the object to a better size.
    tinkercad image
  9. You may want to change the height of the flower (my height defaulted to 10 mm).  To do this, click on the image to see the measurements, find the height measurement, and type in the new height.  Note of caution:  I had a hard time removing thin flowers (3 mm) from my printer’s build plate without breaking them.
  10. Some flowers meet in the middle at a point.  If this happens, you should reinforce the center of the flower so that you can remove it from the build plate without breaking any petals.  I added a cylinder of the same height as the flower in the middle of the shape to support the petals:
    circle in middle
  11. If you want to hang your flower: use the cylinder hole shape to create a hole in one of the petals.  On the image above, there is a hole through one of the lower petals.
  12. When you are finished editing your flower, export your file as an STL, and send it to your printer or slicing software!  Done!


Directions with Mathematica (NEED A LICENSE) and Tinkercad (FREE)

  1.  Create your graph with no background.
    mathematica clover
    Note:  Sometimes the import is a little jagged.  If that happens, I find it helps to use a sightly thicker line, such as Plotstyle->Thickness[.02].
  2. Use the more dialogue to export the image as SVG:mathematica export
  3. Import the image into Tinkercad (go back to step 7 in the process above for details).  I find it helpful to change the scale to at least 50%.   Edit the image in Tinkercad as needed (step 8 in the process above).

Desmos (FREE) and Tinkercad (FREE)

In theory, you should be able to use Desmos (instead of GeoGebra) to create and export your graph.  Of course, creating the graph in Desmos works beautifully.  I only had problems with exporting the graph.  Desmos exports PNG files.  I tried changing various graph settings,  converting the PNG file into SVG files, and importing into Tinkercad.  None of my attempts imported a usable image into Tinkercad.  However, the technology-lover in me believes that it can be done.  It’s just a matter of finding the right graph settings.



4 thoughts on “Making 3D Printed Flowers from Polar Graphs

Add yours

  1. I suggest using Visual Basic, Python or any other programing language to write the curve to a file in DXF format, and importing it from the CAD program to create the 3D model. DXF is an ASCII file with very little and easy instructions to move the pen or draw a line. Originally used by AutoCad.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a free website or blog at

Up ↑

%d bloggers like this: