The Circle Cycle

Posted by Jordan Chapman on Fri 18 May 2018


After reading an article from Benjamin Kovach where he described the process and steps behind his latest work I decided to do a writeup of my latest attempt at generative art: Mad Circles.

If you didn't read the previous article, here is the rough goal of what I was trying to re-create:

A multitude of overlapping circles on a large framed print

Original work by Manolo Gamboa Naon

The Setup

I started off with the same basic setup from my Generative Art Setup post. With it I can run my python codeg and a folder will be created containing the final work and the code used to generate that work. Because of this setup I can easily walk through the progression of my work and also jump back to a previous state if I hit a dead end or simply want to dive deeper into a certain piece.g

The Process

Starting Up

My typical setup generates gifs so that I can see the progress of the image being generated (also they just look cool), so the first couple of images are animated.

Pushing some circles around... pretty boring

Then I realized that I couldn't create gifs like I normally do, because the process looks like the following:

  • Move every entity
  • Draw every entity
  • Save off a frame
  • Repeat...

However my goal was to draw a multitude of circle "tentacles" on top of one another so I couldn't do my typical step all then draw all until completion. Instead I needed to step a single "tentacle" until completion and draw at each step before moving on to other tentacles. Because of this (and my goal to create a static image) I stopped producing gifs and just output the final image.

Circles of random radius get pushed and the color changes randomly at each step while the radius decreases, I think the random colors make this look pretty awful.

Stop picking random colors (pick from a set), make the circles take up less of the canvas (smaller initial radius), and finally introduce a random small curve

Randomly change our "curve" (the amount we turn by each step), make the canvas much larger.

I decided that I didn't want that much whitespace, however looking back I like the scale and the amount of whitespace. I think I might have been to focused on re-creating the original work at this point.

Only decrease our radius 20% of the time (instead of every step) leading to longer tentacles, larger initial radius.g I also added some more "poppy" colors (the bright blues), I think these colors are what eventually led me away from this palette...

New aspect ratio, smaller initial radius and a look at what outlining the circle would look like.

I decided to try a wider format/ratio (1:5) and I really liked it, sticking with it for quite a while. The space at the bottom of this image made me wonder what if all of the tentacles started from the top and reached down like tornados or the appendages of some monstrous celestial octopus.

Sky Tentacles

Random grey color (rgb components all the same value) and a starting positions in the "sky"

Narrowing down the range of greys made an interesting cloud like texture

I wasn't a huge fan of how this path ended up looking, so I went back towards my original goal.

Fill it Up

Filling up the canvas with tentacles

Some color variation

I really liked the spots of white (or near white) so I decided to make many more circles white by adding a bunch of copies of white to the color list I was picking from.

Trying to create some "space" with white circles, I really liked this and revisited it later

I decided to try and add whitespace in a different way by adding a chance to stop the progression of tentacles which increased as they got closer to the edges of the canvas

Interesting dot pattern along the edge, but not very clean

Ball o' Worms

I decided that if I wanted to really clean up the edge then I needed to not draw any tentacles that ended beyond the edge of the canvas. This made me change the way I drew the image. I would march the circle along it's path and store the parameters previously sent to the draw command then after it had completed if it hadn't gone beyond the edge of the canvas then I would draw it in full (otherwise I wouldn't draw it at all).

Finally some space, but this looks a bit like a big tangle of worms. Now I only sometimes decrease the radius as we step.

I decided to just really embrace the worms and make the worm colored. I also changed back to a square canvas and I am now starting all tentacles at the center of the canvas.

Let's try some less wormy colors...g I like the two worms tangled on each other in the bottom right and the one that seems interested at the top right.

Less Wormy Please

Back to our original "frame full of circles" motif, enough of these worms.

Stop starting in the centerg

Let's be looser on that "out of bounds" rule, as long as they don't go too far out of the canvas... Also let's stop with this 100% black or white background.

I like this white on a grey background...

I bet with less worms it will look more like it's cut out of the background

What about just white... Maybe a bit too hard to see, what if I add back the outline...

Horns and Rope

Back to worms, or horns? Starting everyone in the center of the canvas again.

Maybe sometimes let's increase the radius

I didn't really like how the increasing radius looked. These circles were starting to look less like worms and more like rope to me, let's see what we can do to make it more ropey.

Let's make it less likely to decrease the radius (and stop that increase the radius business), since it's less likely you'll stop before hitting the edge of the canvas just stop drawing once you're about to be deativated.

What does the life of just one of these look like? Brought back the chance to increase radius.

I need more rope! Let's make it even ropeier by making the outline yellowish.

I know I said less worm-like, but let's bring back the if you leave the canvas don't draw rule.

What if I make the fill the same as the background color...

More colors for the outline

More and bigger

Let's always draw the biggest arms first so they end up in the background

What do flat colors look like...

Paint Blobs

Kind of reminds me of paint, let's make the individual arms much smaller and stop starting all of them in the center

I also need a few more than before since they're so much smaller...

Longer! More colors! Stop drawing again when we hit the edge

Different colors. Let the arms extend beyond the edge of the canvas

Let the arms go on until the hit the edge! Just draw the outline instead of the fill.

I think just drawing the outline really gives this a graffiti-like feel

Back to the fill, but a much wider canvas

Now back to the outline with that same larger canvas

I love being able to trace (with my eyes) the path of these long tubes. I think the filled one has a nice sense of depth, the outline only one looks a bit too busy to me (almost dirty).

Final Thoughts

While many of these works are interesting there's nothing that I'm really proud or satisfied with.g That being said, I had a blast working on this and looking back gave me a couple of ideas for the future. I enjoy having a rough goal in mind, but not being afraid to go wherever I feel like the work takes me.

I still struggle with color, for the majority of the pictures I chose randomly from a set of predefined colors (that I chose) and I find it a pain to pick out colors. I wonder if I can programmatically pick some starting from a base color or something similar. I really like grey backgrounds, although the white ones really make the pictures "blend in" (especially on this webpage), I should experiment more with background color. I also enjoy non-square canvases or very elongated ones, I think I should try more that have long vertical spaces.

What do you think? Any favorites? Any tips on color?

Comments !