【发布时间】:2012-09-17 20:10:57
【问题描述】:
如上图所示,如何使用 HTML5 canvas 2D context API 将一个圆分成三等份?
我在尝试this
有人可以提出更好的方法吗?可能使用百分比(或度数)而不是硬编码坐标?
var can = document.getElementById('mycanvas');
var ctx = can.getContext('2d');
ctx.fillStyle = "#BD1981";
ctx.beginPath();
ctx.arc(200, 200, 150, 0, Math.PI*2, true);
ctx.closePath();
ctx.fill();
ctx.strokeStyle = "#FFC8B2";
ctx.lineWidth = "2";
ctx.beginPath();
ctx.moveTo(200, 200);
ctx.lineTo(100, 100);
ctx.closePath();
ctx.stroke();
ctx.beginPath();
ctx.moveTo(200, 200);
ctx.lineTo(350, 200);
ctx.closePath();
ctx.stroke();
ctx.beginPath();
ctx.moveTo(200, 200);
ctx.lineTo(100, 300);
ctx.closePath();
ctx.stroke();
【问题讨论】:
-
应该代表什么“百分比”?
-
喜欢 33% (100/3) 或 120 度 (360/3)
-
如果我使用 35% 怎么办?
-
首先,学习基本的三角学...
-
顺便说一句,你的线条不会将圆圈分成三个相等的部分!
标签: html math canvas geometry 2d-context-api