The circle is composed of 4500 separate dots, each with a slightly different colour.
To draw these dots, the program cycles through a loop until the variable n reaches the value of 45. n starts off at 0.01, and is incremented by 0.01 each iteration of the loop.
x and y are the position of the current dot being processed, and are produced directly from the Sine and Cosine of n, in each iteration of the loop.
Every time n is incremented, its Sine and Cosine values change slightly, and thus x and y are found at different positions.
This continues until n is at 45, by which time the full circle has been plotted.

The colour of any dot is in direct relation to its position in the circle and the colour settings set out in the small control panel.
any given dot at any point of the circle will always have the same x and y values, and will always have been generated on the same iteration of the loop, so its n index will always be the same.
What you decide is which values (x, y and n) you assign to which colours. The default is nxy, which means that the n value of any dot will be equal to the red value of its colour, the x value will be equal to its green content, and the y value will be equal to its blue.

Because n would normally never reach over 45, while x and y go nearly all the way to 255, there is a control box at the bottom of the control panel to equalise n for purposes of colour.
at 5.6, n reaches the same heights as x and y, while at the default of 1, it only reaches 45.

If you are well-versed in geometry, you will know that the Sine and Cosine graphs ocillate up and down. The centre for both of these occilations is the centre of the circle, and as the Cosine moves x backwards and forward, the Sine moves y up and down, and the circle is slowly drawn.

This documentation was written to help you better understand how the circle is formed, and how its colours are decided. From this information, you should be able to enjoy the program at a much deeper level.


-- Napalm Llama, January 2004