我看到了一些与此相关的问题,但所提供的解决方案都不适合我。 基本上,我正在制作一个可以为原子的第二个表示设置动画的程序。
假设我需要围绕一个点旋转 8 个小圆圈,我该怎么做?
for (int j = 0; j < 8; j++)
{
x = 300 + sin(time + (45 * PI / 180.00)) * 95;
y = 300 + cos(time + (45 * PI / 180.00)) * 95;
fill_circle_on_screen(ColorBlue,x,y,5);
}
这不起作用;我只看到两个圆圈绕着圆圈旋转。根据 for 循环,应该有 8 个,因为我画了 8 个圆圈。 我尝试在这里实现答案:Finding Points On Perimeter Of a Circle
x = cx + r * cos(a * CV_PI / 180.0)
y = cy + r * sin(a * CV_PI / 180.0)
在我的 for 循环中:300 是 CX 和 CY。 r 为 95。a 为 45。PI 为 CV_PI。
我不知道为什么它不起作用。
有人知道吗?谢谢。
最佳答案
for (int j = 0; j < 8; j++)
{
x = 300 + sin(time + j*(2*PI / 8)) * 95;
y = 300 + cos(time + j*(2*PI / 8)) * 95;
fill_circle_on_screen(ColorBlue,x,y,5);
}
关于c - 围绕一个点旋转的均匀间隔的多个圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16250088/