Customizable curve generator

by kakaroto, published

Customizable curve generator by kakaroto Feb 14, 2013

Thing Info

3954Views 1538Downloads Found in Math Art
Report Thing


This is a customizable curve generator which can generate up to 5 different types of curves.
The Rhodonea (Rose) Curve, Epicycloid, Epitrochoid, Hypocycloid and Hypotrochoid curves can be generated with varying parameters.


UPDATE: Now supports up to 5 different types of curves. See updated instructions below for more information. I have also removed the extrusion option since openscad doesn't support rotate_extrude correctly.

This script will generate an artistic rendering of a mathematical curve. It was originally a generator for the Rhodonea (Rose) Curve, but I've now added support for 4 more curve types.
Here are the equations used for each one of those curves :
Rhodonea curve : x=cos(a/bt)sin(t); y=cos(a/bt)cos(t)
Epicycloid : x=(a+b)cos(t)-bcos(((a/b)+1)t); y=(a+b)sin(t)-bsin(((a/b)+1)t)
Epitrochoid : x=(a+b)cos(t)-ccos(((a/b)+1)t); y=(a+b)sin(t)-csin(((a/b)+1)t)
Hypocycloid : x=(a-b)cos(t)+bcos(((a/b)-1)t); y=(a-b)sin(t)-bsin(((a/b)-1)t)
Hypotrochoid: x=(a-b)cos(t)+ccos(((a/b)-1)t); y=(a-b)sin(t)-csin(((a/b)-1)t)
(See also http://en.wikipedia.org/wiki/Rose_%28mathematics%29 )

You can set the 'a, 'b', and 'c' parameters to affect the look of the curve (see http://en.wikipedia.org/wiki/File:Rose-rhodonea-curve-7x9-chart-improved.svg for example).
You can define how many points you want to be used to draw the result (higher gives better results, but takes longer to generate the STL). You can also control the thickness and height of the curve. The rose radius will set the radius of the petals. This will basically mean that the rose should fit in a circle with that radius.

Experiment, create and enjoy!

More from Math Art

view more

Thing Info

3954Views 1538Downloads Found in Math Art
Report Thing

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag. Print Thing Tag