javascript - 如何以一定角度移动物体?
问题描述
我不会以 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} 这样的速度
解决方案
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;
推荐阅读
- css - 学习者问题:无法将几个按钮固定到位(SPFX、React、JSX)
- javascript - 代码不起作用 - 使用 javascript 自动添加类
- r - R中的哑铃图
- jquery - 如何在 Laravel 6 中创建城市和位置之间的关系?
- pyspark - 在将数据传输到红移时从 aws 胶水转换时间戳
- python - 使用python从csv文件中读取数据作为输入并将输出写入csv文件
- javascript - 将警告非被动事件侦听器反应到滚动阻止“touchstart”
- java - 从字段中自动休眠地图 ID
- c# - 在调用 [Begin]GetResponse UPS 之前,您必须将 ContentLength 字节写入请求流
- python - Maya 中的浮动 UI,并且按钮单击连接,但事件不起作用