我想畫一個圓圈。但是,不是真的。我想要一系列弧線(分段),這意味着一整圈。它會旋轉,它會很棒。但我顯然做錯了什麼。 Please, check this fiddle: http://jsfiddle.net/utWdM/如何在畫布元素中正確繪製一個帶有空隙的圓?
function draw() {
var canvas = document.getElementById("canvas");
if (canvas.getContext) {
var ctx = canvas.getContext("2d");
ctx.lineWidth = 15;
ctx.strokeStyle = 'hsla(111, 56%, 50%, 0.67)';
ctx.beginPath();
ctx.arc(250, 250, 100, 0, Math.PI * 8/30);
ctx.moveTo(250, 250);
ctx.arc(250, 250, 100, Math.PI * 12/30, Math.PI * 20/30);
ctx.moveTo(250, 250);
ctx.arc(250, 250, 100, Math.PI * 24/30, Math.PI * 32/30);
ctx.moveTo(250, 250);
ctx.arc(250, 250, 100, Math.PI * 36/30, Math.PI * 44/30);
ctx.moveTo(250, 250);
ctx.arc(250, 250, 100, Math.PI * 48/30, Math.PI * 56/30);
ctx.stroke();
ctx.closePath();
}
}
draw();
我不想從中心到弧(和第一個不擁有它)開始行。 我一直在用畫布學習基本繪圖,希望能夠理解將來會發生什麼,甚至更多,但是我迫不及待地想知道在這種情況下出了什麼問題。 任何幫助,高度讚賞。
+1好答案。注意:由於您在draw()中進行翻譯,因此可能需要使用ctx.save/ctx.restore進行換行。否則,任何進一步調用draw()都會累積轉換並將繪圖從畫布中驅出。除了提問者需要的內容之外:由於您已經在翻譯中心點,因此您可以添加ctx.rotate(radianAngle),這將使您的弧形圓圈也可以旋轉。 – markE
太棒了!正如小提琴所顯示的那樣,它有效,它幫助我更新了餘弦,正弦和單位圓的知識。這從現在起有所幫助,並且從長遠來看將是有用的。所以,非常感謝你! – slacktracer
理解我應該在哪裏「轉向」以及如何計算它正是我所需要的。我想我幾乎是幾何學迷路了。 = P現在,「最終」產品在這裏可以看到它的全部榮耀!:http://anzol.biz/ – slacktracer