我有一个具体的问题。我有两个矩形,正在计算这两个矩形之间的线。现在我想在该线上画一个圆,该圆以特定速度向前移动。我总是使用新坐标重新绘制圆来实现运动。
现在,我总是将圆的x坐标加1,然后用我的方程计算y坐标。问题在于,我的线斜率越高,圆就移动得越快。
那么如何计算x坐标,使球的速度始终相同?
以下是我的代码。posX和posY是我覆盖的球的位置。Gun和Ammo是我的两个矩形。
现在,我总是将圆的x坐标加1,然后用我的方程计算y坐标。问题在于,我的线斜率越高,圆就移动得越快。
那么如何计算x坐标,使球的速度始终相同?
以下是我的代码。posX和posY是我覆盖的球的位置。Gun和Ammo是我的两个矩形。
this.posX = this.posX - 1;
this.posY = ((this.gunY - this.ammoY) / (this.gunX - this.ammoX)) * (this.posX - this.ammoX) + this.ammoY;