Javascript 绕圆画小直线的数学方法

Javascript 绕圆画小直线的数学方法,javascript,html,canvas,Javascript,Html,Canvas,我必须画一个圆圈周围的线(就像在时钟上一样)。如何使用for循环实现这一点? 你应该阅读基本的三角学,并专注于实现这一点。我不知道如何用Java实际绘制直线,但要计算中心点的坐标(cx,cy)使用 px = cx+sin(a)*r py = cy+cos(a)*r 其中,a是角度(弧度-我认为180度=π弧度),而r是半径 要画围绕外部的小直线,你需要使用这个公式,半径为100,半径为105,并在两组坐标之间画 乙二醇 for(var a=0,aMax=(2*Math.PI),aStep=(M

我必须画一个圆圈周围的线(就像在时钟上一样)。如何使用for循环实现这一点?

你应该阅读基本的三角学,并专注于实现这一点。

我不知道如何用Java实际绘制直线,但要计算中心点的坐标
(cx,cy)
使用

px = cx+sin(a)*r
py = cy+cos(a)*r
其中,
a
是角度(弧度-我认为180度=π弧度),而
r
是半径

要画围绕外部的小直线,你需要使用这个公式,半径为100,半径为105,并在两组坐标之间画

乙二醇


for(var a=0,aMax=(2*Math.PI),aStep=(Math.PI/30);a看看的源代码。

他问的是javascript,
java.lang.Math
是一个java类,在javascript中不可用。它只是javascript中的
Math
。我不认为浏览复杂的代码(它支持skins-wtf)当OP所寻找的只是一个简单的计算时,这是值得的。皮肤应该包含画线的代码。这段代码应该非常简单。而且,看别人的代码总是一个很好的学习经验。@poke同意,OP想要“画一个圆周围的线”-不实现完整的时钟。目标可能完全不与时钟相关,但就像时钟一样。但如果你不知道这些线是如何画的,你将很难理解代码并找到你感兴趣的实际位。。
for (var a=0,aMax=(2*Math.PI),aStep=(Math.PI/30); a<aMax; a+=aStep){
    px1 = cx+Math.sin(a)*r;
    py1 = cy+Math.cos(a)*r;
    px2 = cx+Math.sin(a)*(r+5);
    py2 = cy+Math.cos(a)*(r+5);

    //draw line between (px1,py1) and (px2,py2)
};