OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <html> | |
3 <head></head> | |
4 <body> | |
5 <canvas id="mycanvas" width="600" height="400"></canvas> | |
6 <script> | |
7 if (window.testRunner) | |
8 testRunner.dumpAsText(true); | |
9 | |
10 var canvas = document.getElementById('mycanvas'); | |
11 var ctx = canvas.getContext('2d'); | |
12 | |
13 ctx.lineWidth = 3; | |
14 | |
15 // 20 angles. | |
16 var sweepAngles = [ | |
17 -123.7, -2.3, -2, -1, -0.3, -0.000001, 0, 0.000001, 0.3, 0.7, | |
18 1, 1.3, 1.5, 1.7, 1.99999, 2, 2.00001, 2.3, 4.3, 3934723942837.3 | |
19 ]; | |
20 for (var i = 0; i < sweepAngles.length; i++) { | |
21 sweepAngles[i] = sweepAngles[i] * Math.PI; | |
22 } | |
23 | |
24 var startAngles = [ | |
25 -1, -0.5, 0, 0.5 | |
26 ] | |
27 for (var i = 0; i < startAngles.length; i++) { | |
28 startAngles[i] = startAngles[i] * Math.PI; | |
29 } | |
30 | |
dshwang
2013/07/10 16:53:02
Make canvas-arc-circumference.html cover 160 cases
Stephen White
2013/08/22 15:08:29
Please add a line to LayoutTests/TestExpectations
| |
31 var startAngle = 0; | |
32 var anticlockwise = false; | |
33 var sign = 1; | |
34 for (var i = 0; i < startAngles.length * 2; i++) { | |
35 if (i == startAngles.length) { | |
36 anticlockwise = true; | |
37 sign = -1; | |
38 } | |
39 startAngle = startAngles[i % startAngles.length] * sign; | |
40 ctx.save(); | |
41 for (var j = 0; j < sweepAngles.length; j++) { | |
42 ctx.save(); | |
43 ctx.beginPath(); | |
44 ctx.moveTo(0, 2); | |
45 ctx.arc(18, 15, 10, startAngle, startAngle + (sweepAngles[j] * sign), an ticlockwise); | |
46 ctx.lineTo(0, 28); | |
47 ctx.stroke(); | |
48 ctx.restore(); | |
49 ctx.translate(30, 0); | |
50 } | |
51 ctx.restore(); | |
52 ctx.translate(0, 40); | |
53 } | |
54 | |
55 </script> | |
56 </body> | |
57 </html> | |
58 | |
OLD | NEW |