Categories

Spiral Halftoning

Let’s halftone an image with some overlapping wiggly spirals!

I want to draw N lines, spiraling out from the center of the image, and have them each slightly offset. With the proper offset, this will create the (approximately) proper darkness.

With image darkness k, line width w, and line spacing L, we can get a minimum darkness of $k_{min}=w/L$, and maximum $k_{max}=Nw/L$. So for the largest range of darkness, we need $L=Nw$ and many lines. The first part is easy, but large $N$ will result in low resolution.

To draw an Archimedean spiral, the unperturbed line is defined with $r_0=L/2+tL/(2 \pi)$, with t large enough to make the desired number of turns. Then it’s simple enough to convert from cylindrical to Cartesian coordinates.

How do we choose the offset of the lines? The easy way is to have the$i^{th}$ line (starting with number 1) use $r_i=r0+d_i$, with $d_i$ covering the space between the lines, proportional to k and i. That is $d_i=k(i-1)(L-w)/(N-1)$. Or the lines can be centered around $r_0$, however you want. The following examples have six lines.

Check out an example with two lines, which I’ve animated to show a nice MoirĂ© effect as they overlap.

This same approach can be used for each color channel, if 3*N lines are drawn. Check out the same sort of animation, but with color:

I like this one because the color in the individual spirals is so faint, but it pops out when they overlap!

This site uses Akismet to reduce spam. Learn how your comment data is processed.