繁体   English   中英

获取表示3D对象倾斜方向的2D方向

[英]Get 2D direction that represents tilt direction of 3D object

我在太空中有一个3D对象。 这里是从上到下的角度: 在此处输入图片说明

Y朝向我们,所以我们看不到该轴。 它根本不倾斜,因此方向是Vector2(0,0)。

在此处输入图片说明

现在物体正在向前倾斜。 它正向正X轴倾斜。 现在方向将为Vector2(0,1)

在此处输入图片说明

现在它向左倾斜,方向是Vector(-1,0)

在此处输入图片说明

现在,最后,它向前和向左倾斜,方向将围绕Vector(-0.7071,0.7071)

我正在使用Unity,因此可以将对象的四元数和欧拉角作为Vector3进行访问。 如何根据对象的旋转来计算对象的倾斜方向?

据我了解您的想法,您正在寻找正交向量的法线向量(抽象地附着在人体上)。 如果它向前旋转,则该向量在像您所说的那样获得值(0,1)之后。

您可以通过分解接收该向量的x和y分量-作为两个垂直向量的总和,每个向量代表一个分量(x,0)和(0,y)。

获得该结果的另一种方法是在3D空间P(0,0,1)中具有一个点,该点表示此类矢量的顶部。 现在只需简单地应用旋转矩阵,该点便会移至新位置P(x,y,z),在这里您可以获得所需的x和y。

我希望我不会弄乱什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM