java - 数学问题 : place circles around the clock

标签 java math draw geometry

请注意沿线的灰色圆圈,它们需要平均放置以表示时间,这是我的代码,我哪里错了?

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);
    }

enter image description here

最佳答案

角度必须提供给Math.cos以弧度为单位(在 02*Math.PI 之间)。

所以,而不是

Math.cos((double) (i*30))

使用

Math.cos(i*Math.PI/6.0)

请注意,我还删除了对 double 的无用转换:将一个 int 和一个 double 相乘已经产生了一个 double。

关于java - 数学问题 : place circles around the clock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11448599/

相关文章:

java - Maven编译错误: (use -source 7 or higher to enable diamond operator)

java - 如何在 Java 中实现启发式选择合适的图像

java - 'yum install java-1.8.0' 是某种别名吗?

c++ - 需要帮助理解 FFT 算法中的这一行

python : efficient bytearray incrementation

iphone - 使用quartz-2d时如何实现触摸

xna - 如何使用 XNA 创建类似 Paint 的应用程序?

java - java优先级队列

android - 从另一个资源中绘制位图

C# 普通随机数