让我们说你有一个简笔画。让我们说棒图有一个肘部和一只手。如果棒图想要在没有移动肘部的情况下在风车中旋转他的手怎么办?如果肘部作为圆的中心,并且手必须始终在圆周上,并且我知道肘部和手的确切位置,我如何围绕圆周移动手,同时保持半径(肘部和手部之间的手臂长度,因为它实际上不应该缩小或增长)?
我需要沿着圆的圆周移动手的坐标,圆的中心是肘部。这是2D。
我有两个点的坐标。我可以计算半径,这是点之间的直线长度。了解圆的中心和半径,如何沿圆周旋转手?我希望它保持半径,但改变圆周上的位置。基本上,它必须像它的铰接一样。
P.S:我有一张照片,但Stack Overflow说我太新了......责备Stack Overflow。答案 0 :(得分:2)
基本三角学说:
x = r * cos(a);
y = r * sin(a);
这不考虑手的旋转,只显示手腕所在圆圈上的点。这就是你追求的目标吗?
编辑:抱歉,假设肘部位于(0,0)且x + ve正确且y + ve已上升。
鉴于肘部处于(例如,ey),手腕处于:
wx = ex + r * cos(a);
wy = ey + r * sin(a);
如果像浏览器中那样,y是+ + down,则减去而不是添加。