首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >基于旋转角度计算X、Y移动?

基于旋转角度计算X、Y移动?
EN

Stack Overflow用户
提问于 2011-03-04 19:13:27
回答 2查看 26.9K关注 0票数 22

假设我在2D空间中有一个物体,它可以旋转,然后应该根据它的旋转角度移动。

例如:

  • 如果角度为0(指向上方),则on_timer应按Y移动1,按X移动0。
  • 如果角度为45,则应按Y移动1,按X移动1。
  • 如果指向90度,则按Y移动0,按X移动1。
  • 如果按135度移动,则按Y移动-1,按X移动+1,依此类推。<代码>H29<代码>F210

你知道有什么计算这个的函数吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-04 19:18:07

嗯,它似乎在不同的角度以不同的速度移动。

对于0度(垂直向上),它移动了1,但45度时它移动了sqrt(1^2 + 1^2) = 1.41。

我觉得你应该看看Sin和Cos

代码语言:javascript
复制
X += Speed * Math.Cos(angle);
Y += speed * Math.Sin(angle);

关于Gert-Jan

票数 31
EN

Stack Overflow用户

发布于 2011-03-04 19:18:06

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5192983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档