| /*(function(window){ |
| if (CanvasRenderingContext2D.prototype.ellipse == undefined) { |
| CanvasRenderingContext2D.prototype.ellipse = function(x, y, radiusX, radiusY, rotation, startAngle, endAngle, antiClockwise) { |
| this.save(); |
| this.translate(x, y); |
| this.rotate(rotation); |
| this.scale(radiusX, radiusY); |
| this.arc(0, 0, 1, startAngle, endAngle, antiClockwise); |
| this.restore(); |
| } |
| } |
| if(!supportsPath2D){ |
| function Path2D_(){ |
| this.commandArrays = []; |
| } |
| Path2D_.prototype.moveTo = function(x,y){ |
| this.commandArrays.push({type:'move',coord:[x,y]}) |
| }; |
| Path2D_.prototype.lineTo = function(x,y){ |
| this.commandArrays.push({type:'line',coord:[x,y]}) |
| }; |
| |
| Path2D_.prototype.bezierCurveTo = function(cx,cy,cx2,cy2,x,y){ |
| this.commandArrays.push({type:'bezierCurve',coord:[cx,cy,cx2,cy2,x,y]}) |
| }; |
| |
| Path2D_.prototype.drawToContext = function(ctx){ |
| var command,i, len = this.commandArrays.length; |
| ctx.beginPath(); |
| for(i=0;i<len;i+=1){ |
| command = this.commandArrays[i]; |
| switch(command.type){ |
| case "move": |
| ctx.moveTo(command.coord[0],command.coord[1]); |
| break; |
| case "line": |
| ctx.lineTo(command.coord[0],command.coord[1]); |
| break; |
| case "bezierCurve": |
| ctx.bezierCurveTo(command.coord[0],command.coord[1],command.coord[2],command.coord[3],command.coord[4],command.coord[5]); |
| break; |
| } |
| } |
| }; |
| window.Path2D = Path2D_; |
| } |
| }(window))*/ |