![](/img/trans.png)
[英]How to move an object uniformly from one point to another at a fixed angle?
[英]How to make an object move from one point to another via coordinates?
我目前有一个2D游戏,我试图按照某些坐标移动.png图像。 如果我将此对象放在(0,0)然后尝试移动到(500,500),我可以执行以下操作:
public void move() {
if (x < 500) {
x += velocityX;
}
if (y < 500) {
y += velocityY;
}
}
这可行,但仅仅因为它是完美的对角线。 使用该系统,我只能水平,垂直或对角移动对象,但从不介于两者之间。 如果我尝试这样的事情:
public void move() {
if (x < 500) {
x += velocityX;
}
if (y < 400) {
y += velocityY;
}
}
物体将以完美的对角线移动,直到在y轴上达到400,它将水平移动,最后一个位在x轴上达到500。 我如何制作它以便我可以在沿着直线路径移动物体到任何坐标?
要在窗口中对角移动完美,必须确保velocityX
和velocityY`的比率应该是这样的,
velocityX width
----------- = -----------
velocityY height
在你的情况下,如果width
是500, height
是400,如果velocityX
是5,那么
velocityY should be 4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.