Loading

Customizable curve generator

by kakaroto, published

Customizable curve generator by kakaroto Feb 14, 2013

Description

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.

More from Math Art

view more

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

Instructions

*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/b*t)*sin(t); y=cos(a/b*t)*cos(t)
Epicycloid : x=(a+b)*cos(t)-b*cos(((a/b)+1)*t); y=(a+b)*sin(t)-b*sin(((a/b)+1)*t)
Epitrochoid : x=(a+b)*cos(t)-c*cos(((a/b)+1)*t); y=(a+b)*sin(t)-c*sin(((a/b)+1)*t)
Hypocycloid : x=(a-b)*cos(t)+b*cos(((a/b)-1)*t); y=(a-b)*sin(t)-b*sin(((a/b)-1)*t)
Hypotrochoid: x=(a-b)*cos(t)+c*cos(((a/b)-1)*t); y=(a-b)*sin(t)-c*sin(((a/b)-1)*t)
(See also en.wikipedia.org/wiki/Rose_%28mathematics%29 )

You can set the 'a, 'b', and 'c' parameters to affect the look of the curve (see 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!

Comments

You must be logged in to post a comment.

Top