Spirograph (Hypotrochoid)
The classic Spirograph curve: one circle rolling inside another, with a pen tracing a point offset from the rolling circle's centre. Generates beautifully intricate rosette patterns from three numbers.

Parameters
Hypotrochoid parameters
Fixed Radius (R)- Radius of the outer fixed circle in mm. Range 10–200, default 100. Roughly the overall pattern size.
Rolling Radius (r)- Radius of the inner rolling circle in mm. Range 1–100, default 30. The ratio R / r determines the shape — integer ratios produce closed rosettes, irrational ratios spiral forever.
Pen Distance (d)- Offset of the pen from the rolling circle's centre in mm. Range 1–200, default 50. At
d = rthe curve is a hypocycloid; largerdproduces longer loops. Revolutions- How many times the rolling circle orbits. Range 1–200, default 10. Integer multiples of
R / gcd(R, r)close the curve perfectly; non-integer counts give partial traces. Resolution (pts/rev)- Number of sample points per revolution. Range 10–360, default 100. Increase for smooth circles; the curve is closed, so jaggy sampling shows up at the crossings.
Tuning tips
- To close the curve set
Revolutions = R / gcd(R, r). Example:R = 100, r = 30→gcd = 10, soR / gcd = 10. Ten revolutions close the rosette. - Petal count equals
R / gcd(R, r)— the example above produces a 10-petal rosette. - Thin filigree vs full loops — pick small
dfor delicate traces, largedfor bold overlapping loops.
Typical use
- Decorative coasters / tiles — one generator produces a complete design.
- Jewellery pendants — scale down and print in TPU or PLA at thin nozzle widths.
- Artistic prints — filters like
rippleandtwistlayer beautifully on top.
Related
- Fabric Sculpt Overview
- Concentric Curves — simpler nested rings.
- Transform filter — rotate copies of the pattern for stacked rosettes.