我有一些代码可以返回移动太空船的x和y线速度。 我怎么能结合这些给我总速度?
x = self.player._box2dBody.GetLinearVelocity().x; y = self.player._box2dBody.GetLinearVelocity().y;
因此,如果:
x = 1.99
y = -1.63
我如何计算总速度?
在这种情况下, 向量的长度将被视为速度,因为向量本身表示速度(速度和方向)。 这也被称为大小 。 你得到的.x
和.y
的vector类可能已经有了一个内置的实现来获取幅度或长度。
哪里 是vector的大小。
我建议你阅读线性代数。 Wolfire在这个话题上汇集了一系列不错的博客文章 ,这些博客文章应该能够帮助您快速掌握基础知识。
你还记得早期的高中math吗?
蓝色边的长度是3。
绿色方面的长度是4,
因此红边的长度是SQRT(3 2 + 4 2 )
想象一下,绿线是X速度,蓝线是Y速度。
话虽如此,是的,所以读了一些math。 它会非常方便,Byte56的答案确实包含了这一点。 我只是发布这个添加一个更简单的版本。