# GDV P.1.1.2 Color spectrum in a circle

This assignment seemed a bit tricky in the beginning. It looked like that there were not so much possibilities. But in the end I managed to make thirty reasonably different variations. In the original program P_1_1_2_01 the color wheel segments are arranged in the shape of a fan. The individual vertices are computed from the cosine and sine values of the corresponding angle. A Processing method mode can be used that makes it specially easy to create the wheel segments. The individual points have to be set in the following order: first the middle point, and then the outer ones sequentially. I copied this description from the Generative Design book. If you don’t want to go through all of my descriptions of every program and you would just like to see all Generative Design Variations made until now than follow this link. Generative Design Variations

In the first variation I replaced width and height in the for loop with mouseX and mouseY.  That means that the circle is going to move around its center point.
P_1_1_2_01_GDV_01

In this version I used mouseX and mouseY as the center of the circle.
P_1_1_2_01_GDV_02

I thought it would be interesting to introduce some animation beside of the interaction. The outer points of the circle are now random calculated between 0 and 360.
P_1_1_2_01_GDV_03

To fill in the vertices I replaced vertex_X by mouseY. Wich in return results in a growing triangle if you move the mouse down. In return it results in a shrinking triangle if you move your mouse up.
P_1_1_2_01_GDV_04

Than I added the random function to calculate vertex_X. It generates outer points between 0 and 350. All other keystrokes ranging from 1 to 7 are creating different variations of the original circle.
P_1_1_2_01_GDV_05

This one is only slightly different from the earlier version. Here I added the random function to calculate vertex_X and vertex_Y. Again it generates numbers between 0 and 350.
P_1_1_2_01_GDV_06

Changed two things here. The random numbers are now generated from 180 – 360. And I used noFill. Which leaves us with strokes only.
P_1_1_2_01_GDV_07

Changed the strokeWeight to 20 pixels.
P_1_1_2_01_GDV_08

Here you only see the random generated outer points.
P_1_1_2_01_GDV_09

Same as the earlier sketch but with even thicker points. Pressing the 6 key is also a fine option.
P_1_1_2_01_GDV_10

I did not know that you could give strokeWeight a thickness of 1.5. It makes a difference though if you change this to strokeWeight 1 (or 2). I think I can let go of the begin- and endShape functions. They are of no use anymore because we are only dealing with points now.
P_1_1_2_01_GDV_11

Introduced a strokeWeight of 80 pixels. Points are generated between 150 and 300.
P_1_1_2_01_GDV_12

Here I narrowed the band of points. They are now random generated between 300 and 320. Oh… and there is something weird going on line 85. There is a superfluish ; in the code. I do not think that it does any harm. Hmmm… now added eleven more ; (in my local sketch). Nothing seems to happen. Ok. Might be good to know at some point.
P_1_1_2_01_GDV_13

I have replaced the points by rectangles measured 100 by 100 pixels. All positioned in the range of 200 to 300.
P_1_1_2_01_GDV_14

Tried to clean up some shapes by narrowing the ranges in which rectangles are generated. They now are generated in the range of 250 to 251. It gives it a little movement. Which is just enough to keep it interesting. I have removed all begin- and endShape related functions. It has one drawback though. The key functions 6 – 8 are only giving static feedback.
P_1_1_2_01_GDV_15

Introduced the rotate function.
P_1_1_2_01_GDV_16

Translated the previous sketch to the middle of the screen. Also scaled it 0.4.
P_1_1_2_01_GDV_17

Replaced the rectangles with ellipses of 400 by 10 pixels. Positions are generated from 0 to 100.
P_1_1_2_01_GDV_18

Replaced the ellipses with rectangles. Although I used them as lines. Just put the x-size to 800 and y-size to zero.
P_1_1_2_01_GDV_19

Vertex_X is generating random positions in the range of 50 to 200.  Vertex_Y is now generating random positions in the range of 0 to 200. Rectangles are reduced to lines of 100 by 0.
P_1_1_2_01_GDV_20

Replaced the lines with very small squares.
P_1_1_2_01_GDV_21

Replaced the squares with rectangles measuring 800 pixels by 1.
P_1_1_2_01_GDV_22

Replaced the rectangles with ellipses. On top of every ellipse another smaller ellipse in a different color is displayed. I have to admit its a little cheap effect.
P_1_1_2_01_GDV_23

Here the ellipses are replaced with lines. In fact they are rectangles with a width of 1 pixel and a height of 600 pixels.
P_1_1_2_01_GDV_24

Not much going on here except that I like this version more because the object is on an angle.
P_1_1_2_01_GDV_25

Increased the random vertex_X and vertex_Y positions to 0 to 200. Used ellipses and replaced fill with stroke. There is a nice bright blue in the center.
P_1_1_2_01_GDV_26

This seems to be a combination of a few sketches I have made earlier. It is working with ellipses although you only see lines.
P_1_1_2_01_GDV_27

Made both rings a bit thicker.
P_1_1_2_01_GDV_28

Almost the same code as the previous sketch. Replaced the ellipses with rectangles.
P_1_1_2_01_GDV_29

And this is the last sketch in which I used a very thick circle made by rectangles which show up like they were lines.
P_1_1_2_01_GDV_30