看看沿线的灰色圆圈,它们需要平均放置以代表小时,这是我的代码,我哪里出错了?
for (int i=0; i<12; i++)
{
c.drawCircle(140*(float)Math.cos((double) (i*30))+ width/2,
140*(float) Math.sin((double) (i*30)) + height/2, 1, p);
}
角度必须以弧度(在和之间)提供给Math.cos。0
2*Math.PI
所以,而不是
Math.cos((double) (i*30))
利用
Math.cos(i*Math.PI/6.0)
请注意,我还删除了对 double 的无用强制转换:将 int 和 double 相乘已经产生了 double。
Math.sin
并Math.cos
以弧度而不是度数为单位操作角度。要更正,请乘以 pi 并除以 180。