42906053623 http://1ucasvb.tumblr.com/post/42906053623/in-a-previous-post-i-showed-how-to-geometrically 849 In a previous post, I showed how to geometrically...

In a previous post, I showed how to geometrically construct a sine-like function for a regular polygon.

I also pointed out how the shape of the function’s graph depends on the orientation of the polygon, since it isn’t perfectly symmetric like the circle.

This animation illustrates how the polygonal sine (dark curve) and polygonal cosines (clear curve) change as the generating polygon rotates.

Derivation

First of all, it is important to point out these functions are not based on the perimeter of the shape, like it is for the unit circle. We’re still sticking to the interior angle here. If we used the perimeter as a substitute for the angle we would just get a deformed linear spline of the sine function, which is rather useless and boring.

In order to find these functions for an arbitrary polygon, we first need to write the polygon in polar form. That is, we want the radius for a given angle. In a circle, this is a constant value.

A general “Polar Polygon” function is:

PPn(x) = sec((2/n)·arcsin(sin((n/2)·x)))

Where n is the number of sides of the polygon. If n is not an integer, the curve is not closed.

Armed with this function, we can quickly find the polygonal sine and polygonal cosine:

Psinn(x) =  PPn(x)·sin(x)Pcosn(x) =  PPn(x)·cos(x)

As n grows, the functions approximate the circular ones, as expected. To rotate the polygon, just add an angle offset to the x in PPn.

This technique is general for any polar curve. Here’s a heart’s sine function, for instance

So, what is it good for?

I’ve used this several times when I wanted some smooth interpolation between a circle and a polygon, in such a way that the endpoints of the interpolation are a perfect circle and a perfect, pointy polygon. It’s useful in parametric surfaces, such as in this old avatar of mine:



Now you can also listen to what these waves sound like

In a previous post, I showed how to geometrically construct a sine-like function for a regular polygon.

I also pointed out how the shape of the function’s graph depends on the orientation of the polygon, since it isn’t perfectly symmetric like the circle.

This animation illustrates how the polygonal sine (dark curve) and polygonal cosines (clear curve) change as the generating polygon rotates.

Derivation

First of all, it is important to point out these functions are not based on the perimeter of the shape, like it is for the unit circle. We’re still sticking to the interior angle here. If we used the perimeter as a substitute for the angle we would just get a deformed linear spline of the sine function, which is rather useless and boring.

In order to find these functions for an arbitrary polygon, we first need to write the polygon in polar form. That is, we want the radius for a given angle. In a circle, this is a constant value.

A general “Polar Polygon” function is:

PPn(x) = sec((2/n)·arcsin(sin((n/2)·x)))

Where n is the number of sides of the polygon. If n is not an integer, the curve is not closed.

Armed with this function, we can quickly find the polygonal sine and polygonal cosine:

Psinn(x) = PPn(x)·sin(x)
Pcosn(x) = PPn(x)·cos(x)

As n grows, the functions approximate the circular ones, as expected. To rotate the polygon, just add an angle offset to the x in PPn.

This technique is general for any polar curve. Here’s a heart’s sine function, for instance

So, what is it good for?

I’ve used this several times when I wanted some smooth interpolation between a circle and a polygon, in such a way that the endpoints of the interpolation are a perfect circle and a perfect, pointy polygon. It’s useful in parametric surfaces, such as in this old avatar of mine:

Now you can also listen to what these waves sound like

  1. topazvulpix113 reblogged this from uxiebunny
  2. pamcakeztheyreeverywhere reblogged this from uxiebunny
  3. thorin-motherfucking-oakenshield reblogged this from uxiebunny
  4. uxiebunny reblogged this from 1ucasvb
  5. radswaggin reblogged this from 1ucasvb
  6. vaudevilleplaybook reblogged this from 1ucasvb
  7. chizukurowassan reblogged this from arithmetical-design
  8. designaroni reblogged this from geometric-aesthetic
  9. svarmorsdrom reblogged this from 1ucasvb
  10. pfeitthepower reblogged this from physicistsneedlovetoo
  11. kalemarshman reblogged this from 1ucasvb and added:
    Sinusoids and Shapes.
  12. derpyandiknowit reblogged this from 1ucasvb
  13. astrapolitan reblogged this from atomstargazer
  14. turtleleaf reblogged this from pakkisukibe
  15. cassiepetro575 reblogged this from 1ucasvb and added:
    design
  16. tardbunny reblogged this from malallory
  17. edward-barker reblogged this from amazingpowersofdeduction
  18. andriek reblogged this from codingandtea
  19. codingandtea reblogged this from 1ucasvb
  20. supimthomas reblogged this from zeroyalviking