4

I'm wondering what's the formula for a family of curves. Specifically the astroid. A few requirements: There should be one main one and then a bunch of them nestled inside. At each of the cusp-points, all of them are exactly at the (0,1), (1,0), (-1, 0), (0, -1) points, and only there. I've tried a bunch of formulas in which I use varying degrees of offset, but that doesn't work. If you come up with a formula, it should be in parametric equation style. The reason I'm doing this is for a personal wood working project. I want to make something cool out of wood using a computer controlled wood router. Also, It would look cool.

1 Answers1

4

Do you mean something like $$ x = |\cos t|^{p-1} \cos t,\qquad y = |\sin t|^{p-1} \sin t, $$ for $p > 2$, which parametrizes $|x|^{2/p} + |y|^{2/p} = 1$ if $0 \leq t \leq 2\pi$?

Here's a plot for $2.5 \leq p \leq 7$: A family of astroids

  • Yes! That's it, and it's really, really cool! Ahh, can I ask you for one more small thing? What software are you using? I'm using straight C#, because it's easier for me personally to create a text file that is understandable by a computer controlled router (Gcode), but I might make the jump to whatever you're using because it takes a lot of hassle out of doing the root function (which isn't so easy in C#). I apologize for gushing so much about a curve. – user3832863 May 16 '15 at 16:31
  • I'm using ePiX, a GPL C++ library that outputs LaTeX picture code. (Incidentally, the output PDF was much smoother than the posted png; maybe the default import resolution of the GNU Image Manipulation Program has changed recently...?) Naively, it looks straightforward to coax ePiX to output GCode, but it may not be much easier than coding something from scratch in C, C++, Python, or even using a spreadsheet to generate numerical pairs...? You're welcome to email me if you like. (Contact info is on the ePiX page.) – Andrew D. Hwang May 16 '15 at 17:03