求给定x,y,z坐标的方向
Find direction of given x,y,z cordinates
我是新手;它的发展。我有x,y,z坐标(0.00949334694383068,-0.3999829847985352,0.8449078780010854)通过使用给定的坐标,我怎么能找到方向。
for an example
input one : x,y,z = 0.00949334694383068, -0.3999829847985352, 0.8449078780010854
input two : x,y,z = 0.01603883281370779, 0.6066595296580494, 0.5342810849038371
最后我想比较input_one方向和input_two方向。
这叫做向量数学
"坐标"是一种特殊的向量,相对于某个原点(在你的例子中是x=0,y=0,z=0
)。因此,差值x1-x2, y1-y2, z1-z2
是从点2 到点1的向量。逆x2-x1, y2-y1, z2-z1
是从点1 到点2的向量。
向量的方向通常通过忽略其长度或将其长度设置为1来定义。所以我们首先需要定义长度,也就是L = √(x*x + y*y + z*z)
。我们可以定义向量x/L, y/L, z/L
,其指向与x,y,z
相同的方向,但长度为1。
x1/L1 * x2/L2 + y1/L1 * y2/L2 + z1/L1 * z2/L2
。如果是1,它们指向同一个方向。如果它是0,它们是正交的。如果是-1,它们指向相反的方向。
可以看到,向量0,0,0的长度为0,没有方向。这可能会使事情变得有点复杂。
在OpenCV:类Vec。长度函数称为norm(v)
,内积称为v1.mul(v2)
你要做的就是计算方位角。如果您对导航或地理目的感兴趣,并且需要彻底了解它,可以从这里开始:
http://mobile.codeguru.com/cpp/cpp/algorithms/article.php/c5115/Geographic-Distance-and-Azimuth-Calculations.htm否则你可以找一个库来计算3d坐标的方位基
相关文章:
- QGraphicsPolygonItem在拖动时未更新QPolygonF坐标
- 使用Unreal C++获取VR耳机的世界位置/方向
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 在C++中向零方向近似的最佳方法
- 垂直方向的 Gtk3+ 旋转按钮 (c/c++)
- OpenVR:向视图方向移动
- OpenGL 4.3 错误地将第 4 个纹理坐标映射到与第 3 个纹理坐标相同的位置
- 来自逆 vp 矩阵和相机位置的光线方向不正确
- 比较两个节点坐标的最佳方法是什么?
- 在 OpenGL 中将笛卡尔世界坐标转换为球面局部坐标
- 带有枚举方向/类型的气泡排序结构数组
- OpenGL通常"Up"方向?
- 定义/预设NURBS起点和终点的方向
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- 如何在C++中获取坐标?
- 如何按另一个向量的方向调整一个向量?
- 如何获得世界坐标屏幕(DX11,C )的射线方向
- 欧拉坐标到方向矢量
- 求给定x,y,z坐标的方向