Pressing 'c' or 'x' changes the background color. It starts at hubski orange rbg(237,99,8). Tapping 'c' adds 10 to R, subtracts 10 from G, and adds 15 to B. When a value goes out of range (<0 or >255), the value 'bounces' off the wall and changes direction. This gives a rather smooth color change through the world of rgb. What I think it cool is that the color is treated like a ball in 3d space which travels in a straight line bouncing off of the walls of a cube. Will it visit all colors? Will it ever bounce in a corner?
Your conception of a ball bouncing in a color cube is interesting. Because you are cycling by 10 among 256 choices, your R will always be odd and your G will always be even so you don't hit every color. Cycling by evens through evens maintains parity. However, your B will hit every value eventually. As for corners, we'd need R=255, G=0, and B=255 OR B=0. However, whenever R is 255, G is always 246, because these values move antiparallel to each other.
Nice! What if all three values were relatively prime to 256, and relatively prime to each other? Kind of a neat math question. Imagine starting at 0,0,0 and having adding numbers of 3, 5 and 7 for example. We could even use "wraparound" (mod 256) to simplify it. Will every value (r,g,b) be reached?
This is with transparency and a small orbit distance. Orbit distance is measured in planet diameters, so an orbit distance of 0.5 puts the satellites right on the circumference of the planet (0.5 diameter = 1 radius) and smaller than that puts the satellites inside. Tap 't' to change transparency and you can see the world of sprockets inside.
This is with cranking up the satellite ratio high. The satellite ratio controls the size of the satellites as a fraction of the planet's diameter. The orbit distance is measured in diameters, so turning up the satellite ratio also affects orbit distance. By moving the satellite ratio up, we can get lots of overlapping. Turn on transparency and hold down 'a' for some cool effects.
You need java installed on your browser to use the app. If you don't have it installed and you have a Mac, I've made a standalone app for Mac you can get here: