所以基本上我在 C++ 上制作一个台球游戏(有点)。在我开始编码之前,我仍在思考这个理论以及如何准确地实现它,我有点卡住了。因此,给出了球的起始坐标,并且还给出了关于射门的功率以及带有坐标的射门方向的输入。
例子:
> Ball: (280,70)
Input:
> 2(power) 230(x) 110(y)
Output:
> 180(x) 150(y)
幂意味着基本上它会走 X * 给定坐标的距离。因此,如果它是 1,它只会达到 230 110,但如果它更多,它将成为该距离的两倍、三倍、四倍等。(应忽略外部因素 - 摩擦等)
到目前为止,我已经设法创建了一个算法来找到球将要经过的路线。但我不知道球会停在这条线的哪一点。任何帮助将不胜感激!
还有一件事,我还需要计算如果撞到台球桌的墙壁会去哪里(台球桌是一个 2:1 的矩形,具有给定的边缘坐标),我还设法找到了它的位置会继续前进,但不是它停止的确切点。
TL; DR 我需要找到台球将停在的行进线点。