<!DOCTYPE html>
<title>Canvas test: 2d.path.arc.selfintersect.2</title>
<meta name="author" content="Philip Taylor">
<script src="../common/canvas-tests.js"></script>
<link rel="stylesheet" href="../common/canvas-tests.css">
<body class="show_output">

<h1><a href="index.2d.html">2d</a>.<a href="index.2d.path.html">path</a>.<a href="index.2d.path.arc.html">arc</a>.<a href="index.2d.path.arc.selfintersect.html">selfintersect</a>.2</h1>
<p class="desc">arc() with lineWidth > 2*radius is drawn sensibly</p>

<div class="refs">Spec references:
<ul>
<li><a href="../annotated-spec/canvas.html#testrefs.2d.path.arc.draw">2d.path.arc.draw</a>
</ul>
</div>

<p class="output">Actual output:</p>
<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
<p class="output expectedtext">Expected output:<p><img src="../resources/green-100x50.png" class="output expected" id="expected" alt="">
<ul id="d"></ul>
<script>
_addTest(function(canvas, ctx) {

ctx.fillStyle = '#f00';
ctx.fillRect(0, 0, 100, 50);
ctx.lineWidth = 180;
ctx.strokeStyle = '#0f0';
ctx.beginPath();
ctx.arc(-50, 50, 25, 0, -Math.PI/2, true);
ctx.stroke();
ctx.beginPath();
ctx.arc(100, 0, 25, 0, -Math.PI/2, true);
ctx.stroke();
_assertPixel(canvas, 50,25, 0,255,0,255, "50,25", "0,255,0,255");
_assertPixel(canvas, 90,10, 0,255,0,255, "90,10", "0,255,0,255");
_assertPixel(canvas, 97,1, 0,255,0,255, "97,1", "0,255,0,255");
_assertPixel(canvas, 97,2, 0,255,0,255, "97,2", "0,255,0,255");
_assertPixel(canvas, 97,3, 0,255,0,255, "97,3", "0,255,0,255");
_assertPixel(canvas, 2,48, 0,255,0,255, "2,48", "0,255,0,255");


});
</script>

