Looping with canvas: Difference between revisions
m (moved Looping with Canvas to Looping with canvas) |
No edit summary |
||
Line 6: | Line 6: | ||
LOOP... | LOOP... | ||
} | } | ||
== Examples == | |||
Here is a complete HTML page with a working canvas: | |||
<source lang="javascript"><!DOCTYPE html> | |||
<html> | |||
<head> | |||
<meta charset="utf-8" /> | |||
<script> | |||
function draw(){ | |||
c = document.getElementById("canvas") | |||
//console.log("c is",c) | |||
p = c.getContext("2d") | |||
x = 10 | |||
while (x<300) { | |||
p.strokeRect(x,100,20,40) | |||
x+=60 | |||
} | |||
} | |||
</script> | |||
</head> | |||
<body onload="draw()"> | |||
<h1>Hello canvas</h1> | |||
<canvas id="canvas" width="640" height="640" style="border: 3px dotted red"></canvas> | |||
</body> | |||
</html> | |||
</source> | |||
Here's the output: | |||
<canvas id="c1"> | |||
function draw(){ | |||
c = document.getElementById("c1") | |||
//console.log("c is",c) | |||
p = c.getContext("2d") | |||
x = 10 | |||
while (x<250) { | |||
p.strokeRect(x,100,20,40) | |||
x+=60 | |||
} | |||
} | |||
</canvas> | |||
Variation: When the loop reaches the end of page it breaks the line. | |||
It redefines the "x" value to the begin of the line and adds 40px to "y". | |||
<canvas id="c2" width="300" height="300" showsrc="true"> | |||
function draw() { | |||
c = document.getElementById("c2"); | |||
p = c.getContext("2d"); | |||
hands = 1; | |||
x = 20; | |||
y = 20; | |||
while (hands < 100) { | |||
//console.log(hands); | |||
p.strokeRect(x,y,20,20); | |||
x = x + 50; | |||
hands++; | |||
if (x > 600) { | |||
x = 20; | |||
y = y + 40; | |||
} | |||
} | |||
} | |||
</canvas> |
Revision as of 15:56, 25 September 2012
while CONDITION { LOOP LOOP LOOP... }
Examples
Here is a complete HTML page with a working canvas:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script>
function draw(){
c = document.getElementById("canvas")
//console.log("c is",c)
p = c.getContext("2d")
x = 10
while (x<300) {
p.strokeRect(x,100,20,40)
x+=60
}
}
</script>
</head>
<body onload="draw()">
<h1>Hello canvas</h1>
<canvas id="canvas" width="640" height="640" style="border: 3px dotted red"></canvas>
</body>
</html>
Here's the output:
<canvas id="c1"> function draw(){
c = document.getElementById("c1") //console.log("c is",c) p = c.getContext("2d") x = 10 while (x<250) { p.strokeRect(x,100,20,40) x+=60 }
} </canvas>
Variation: When the loop reaches the end of page it breaks the line. It redefines the "x" value to the begin of the line and adds 40px to "y".
<canvas id="c2" width="300" height="300" showsrc="true"> function draw() {
c = document.getElementById("c2"); p = c.getContext("2d"); hands = 1; x = 20; y = 20; while (hands < 100) { //console.log(hands); p.strokeRect(x,y,20,20); x = x + 50; hands++; if (x > 600) { x = 20; y = y + 40; } }
} </canvas>