您好我想使用基於動態用戶輸入的HTML畫布(即起始座標和角度)創建多邊形。這裏是示例代碼。使用動態用戶輸入在html5中創建畫布多邊形
<canvas width="500" height="400" id="myCanvas"></canvas><br /><br />
<script>
var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');
function polygon(ctx, x, y, radius, sides, startAngle, anticlockwise) {
if (sides < 3) return;
var a = (Math.PI * 2)/sides;
a = anticlockwise?-a:a;
ctx.save();
ctx.translate(x,y);
ctx.rotate(startAngle);
ctx.moveTo(radius,0);
for (var i = 1; i < sides; i++) {
ctx.lineTo(radius*Math.cos(a*i),radius*Math.sin(a*i));
}
ctx.closePath();
ctx.restore();
}
var centerX = document.getElementById("cood1").value; //Starting Coordinate 1
var centerY = document.getElementById("cood2").value; //Starting Coordinate 2
var centerZ = document.getElementById("cood3").value; //Circle Radius
context.beginPath();
polygon(context,centerX,centerY,centerZ,45,-Math.PI/2);
context.fillStyle="rgba(227,11,93,0.75)";
context.fill();
context.stroke();
</script>
的問題是,當我提出的起始座標和半徑(以多邊形圓的情況下)dynamic.If我硬編碼相同的工作的代碼是不工作...
多邊形(上下文,50,50,50,45,-Math.PI/2);
專家親切分享我要去的地方錯了!
@John R ....任何輸入? – MaxPyne