繁体   English   中英

将围绕一个点旋转的多个圆均匀间隔

[英]Evenly space multiple circles rotating around a point

我已经看到了一些与此有关的问题,但是所提供的解决方案都不适合我。 基本上,我正在制作一个可以对原子的第二表示进行动画处理的程序。

假设我需要围绕一个点旋转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个圆。 我试图在这里实现答案: 在圆的周长上找到点

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM