Tags 基于度在圆周上找到一点

Tags 基于度在圆周上找到一点,tags,geometry,point,degrees,Tags,Geometry,Point,Degrees,假设你有一个棒状身材。假设棒状身材有一个肘部和一只手。如果木棍人物想在风车里旋转他的手而不移动他的肘部怎么办?如果肘部作为圆的中心,手必须始终位于圆的圆周上,并且我知道肘部和手的确切位置,那么如何在保持半径(肘部和手之间的手臂长度,因为它确实不应该收缩或增长)的同时,绕圆的圆周移动手 我需要沿着圆周移动手的坐标,其中圆心是肘部。这是二维的 我有两个点的坐标。我可以计算半径,它是点之间直线的长度。知道圆的中心和半径后,如何沿圆圆周旋转手?我希望它保持半径,但改变圆周上的位置。基本上,它必须表现得像

假设你有一个棒状身材。假设棒状身材有一个肘部和一只手。如果木棍人物想在风车里旋转他的手而不移动他的肘部怎么办?如果肘部作为圆的中心,手必须始终位于圆的圆周上,并且我知道肘部和手的确切位置,那么如何在保持半径(肘部和手之间的手臂长度,因为它确实不应该收缩或增长)的同时,绕圆的圆周移动手

我需要沿着圆周移动手的坐标,其中圆心是肘部。这是二维的

我有两个点的坐标。我可以计算半径,它是点之间直线的长度。知道圆的中心和半径后,如何沿圆圆周旋转手?我希望它保持半径,但改变圆周上的位置。基本上,它必须表现得像铰链一样


我有一张照片,但Stack Overflow说我太新了。。。归咎于堆栈溢出。

基本三角学说:

x = r * cos(a);
y = r * sin(a);
这不考虑手的旋转,只显示手腕所在圆上的点。这就是你想要的吗

编辑:抱歉,假设肘部位于(0,0),x+ve为右,y+ve为上

假设肘部位于(ex,ey),则手腕位于:

wx = ex + r * cos(a);
wy = ey + r * sin(a);

如果像在浏览器中一样,y是+ve,那么用减法代替加法。

也许这个问题的答案会有所帮助:记住cos()和sin()通常以弧度为参数。如果你的角度以度为单位(如问题主题所示),你需要先将它乘以π/180。谢谢。手腕就是我的意思;对不起,我的问题很模糊。我试试看,我不明白为什么不行。