我已经看到了一些关于此的问题,但所提供的解决方案都不适用于我。 基本上,我正在制作一个可以为原子的第二个表示设置动画的程序。
说我需要围绕一个点旋转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);
}
这不起作用;我只看到围绕圆圈旋转的两个圆圈。应该有8个,因为for循环,因为我画了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。
我不知道为什么它不起作用。
有人知道吗?感谢。
答案 0 :(得分:1)
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);
}