summaryrefslogtreecommitdiff
path: root/js/modularpascal.js
blob: a2c4c1a161d6ed7dbb04bc7e9daa1b562ba8a0e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56

function getX()
{
	return $("#mod").val();
}



function updateTriangle()
{
	var triangle = [];
	var colors = [];
	var currentX;
	var x = getX();
	triangle = [];
	currentX = x;
	for (var i = 0; i < height/2; i++)
	{
		triangle.push([]);
		triangle[i].push(1);
		for (var j = 1; j < i; j++)
			triangle[i].push((triangle[i-1][j-1]+triangle[i-1][j])%x);
		triangle[i].push(1);
	}
	colors = [];
	for (var i = 0; i < x; i++)
		colors.push([random(255), random(255), random(255)]);
	background(255);
	noStroke();
	for (var i = 0; i < height/2; i++)
	{
		for (var j = 0; j <= i; j++)
		{
			fill(colors[triangle[i][j]][0], colors[triangle[i][j]][1], colors[triangle[i][j]][2]);
			rect(getPos(i, j)[0], getPos(i, j)[1], 2, 2);

		}
	}

}

function setup()
{
	createCanvas(512, 512);
	updateTriangle();
}

function getPos(row, column)
{
	return [width/2 - row + 2 * column, row*2];
}

function draw()
{

}