You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Peter 417caae273 Initial commit 2 years ago
.gitignore Initial commit 2 years ago
LICENSE.txt Initial commit 2 years ago Initial commit 2 years ago
scad-gen.rb Initial commit 2 years ago


Generate OpenSCAD files for visualizations of arbitrary functions.


Why not?

I wanted to be able to generate 3D models of various mathematical functions after seeing this Tweet by @nwilliams030


This is one simple Ruby script. At the top are the only things you need to edit:

  • t: the starting input value for your function (f(0))
  • step: the stepping between function values
  • tmax: the end value
  • calc(t): your function, expected to return an array with (x,y,z)

The main loop iterates from t to tmax at step increments, calculates the function calc at each step, and draws cylinders between the points, with a sphere at each point (for a smoother appearance).

After setting it all up, run the script, sending the output to a target file. Open in OpenSCAD, render, voilà.