首页 > 解决方案 > 如何以一定角度移动物体?

问题描述

我不会以 20° 的角度移动我的对象(有 {x:10,y:15}) 示例图片:https ://cdn.discordapp.com/attachments/591642374376259593/602618211040493568/unknown.png

let plus = {
   x: Math.cos(this.angel),
   y: Math.sin(this.angel)
}
this.x += plus.x
this.y += plus.y

我期望像 {x:2.5,y:3} 这样的速度

标签: javascripthtml

解决方案


let angle = 20;

您需要将角度转换为弧度

let radians = angle * (Math.PI / 180);

然后用它来找到 x 和 y

let plus = {
   x: Math.cos(radians),
   y: Math.sin(radians)
}

this.x += plus.x
this.y += plus.y

0 度角在 3 点钟方向,90 度角在 6 点钟方向,以此类推。

如果你想要图中的角度,那么

let angle = 90 - 20;

推荐阅读