# Polar Coordinates Distribution

If you're at all interested in watching me free from code. I recorded a video of me coding this snippet (which is about 11 minutes long or so).

In the video I create a few functions that allow you to draw shapes like these: Mathematically this stuff is really simple ... the free form nature of the video takes a less technical perspective as you'll see (I even made a few funny mistakes).

Actionscript:
1. [SWF(width = 600, height = 600)]
2. var dotNum:int = 1000;
4.
5. x = 120
6. y = 100;
7.
8. // extra stuff to display what the functions can do
10.
11. function onDrawAll(evt:Event):void{
12.     graphics.clear();
13.     for (var i:int = 0; i<16; i++){
14.         var m:Number;
15.
17.         var xp:Number = i % 4 * rad
18.         var yp:Number = int(i / 4) * rad
19.
20.         var type:int = int(Math.random() * 4);
21.         if (type == 0){
22.           makeShape(xp, yp, rad-60, Math.random() , 1);
23.         }else if (type == 1){
24.            makeShape(xp, yp, rad-60, 1,  Math.random());
25.         }
26.         else if (type == 2){
27.            m = Math.random() * 2;
28.            makeShape(xp, yp, rad-Math.random()*120, m, m);
29.         }
30.         else if (type == 3){
31.            m = Math.random() * 2;
32.            makeShape(xp, yp, rad-Math.random()*120, m, m/2);
33.         }
34.     }
35. }
36.
37. // main part from the video
38. function makeShape(xp:Number, yp:Number,
40.                    m1:Number=1):void{
41.     var polarX:Number;
42.     var polarY:Number;
44.     graphics.lineStyle(0, 0);
45.     var theta:Number = Math.random() * Math.PI * 2;
46.     for (var i:int = 0; i<dotNum; i++){
48.         polarX = xp + radius * Math.cos(theta * m0);
49.         polarY = yp + radius * Math.sin(theta * m1);
50.         theta += 0.1;
51.
52.         makeDot(polarX, polarY);
53.
54.     }
55. }
56.
57. function makeDot(xp:Number, yp:Number, fillColor:uint = 0x000000):void{
58.     graphics.beginFill(fillColor);
60.     graphics.endFill();
61. }

Here it is over at wonderf:

1. Jackson Dunstan
Posted March 3, 2010 at 12:35 pm | Permalink

I don’t see a link to the creation video. I do see the wonderfl for the actual app though, and it’s pretty cool.

2. altschuler
Posted March 4, 2010 at 2:11 am | Permalink

Nice!

Jackson, the link is up there, just above the snippet. http://actionsnippet.com/vids/polar_vid.html

3. Mads Buch Stage
Posted March 4, 2010 at 3:25 am | Permalink

Always fun to see somebody else code What program did you use to record the tutorial?

4. mike
Posted March 4, 2010 at 6:17 am | Permalink

I like this a lot, it got me thinking to how one might use perlin noise interference with alpha blending to make that stuff look even cooler, especially with those galaxy like patterns!!