正如标题所描述的,我想制作一个在另一个大圆的扇形边缘循环的小圆。我已经实施了该部门的圈子,现在唯一的问题是如何让这个部门的边缘小圈子流通。我尝试了各种方法,但是,其中没有一个被证明是成功的,所以我请求你给我一些如何实现它的提示。在圆的边缘移动的圆形
在此先感谢。
正如标题所描述的,我想制作一个在另一个大圆的扇形边缘循环的小圆。我已经实施了该部门的圈子,现在唯一的问题是如何让这个部门的边缘小圈子流通。我尝试了各种方法,但是,其中没有一个被证明是成功的,所以我请求你给我一些如何实现它的提示。在圆的边缘移动的圆形
在此先感谢。
你必须要考虑的是,对于集中在原点,半径为1的圆,圆上的每个点都可以被描述为:
P = [sin(alpha); cos(alpha)]
随着
现在,如果你改变半径和中心,你将有:
P = [(radius * sin(alpha))+x_center; (radius*cos(alpha))+y_center]
所以,只要有alpha
循环会从0到2 * PI(或任何你需要的圆圈部分)和美国e上述公式来计算小圆的中心位置。
我认为你有一个函数可以在笛卡尔坐标和半径的给定位置绘制一个圆。
使用极坐标(角度/半径),将半径设置为大圆的半径减去小圆。将角度设置到您想要开始圆的任何位置。然后设置一个循环,使角度增加一个给定量。每增加一次,清理屏幕,画出大圆圈。然后将极坐标转换为笛卡尔坐标,在大圆的中心点上画小圆。坚持只要你想。
给出了一些你实施的细节。你怎么定了一个圈子。什么意思是“流通界” – 2011-12-26 23:05:08
你想画两个圆?看到一个转动...可能是你需要使用一个Ihm库。 – 2011-12-26 23:08:39
您是否满足“滚动无滑动”条件(并且图像中有足够的结构来显示结果),还是足够使移动的圆定位正确? – dmckee 2011-12-27 00:44:09