我想使用球面坐标实现节点之间的距离测量。我们如何在静脉模拟中找到特定节点的方向。
由于
答案 0 :(得分:1)
静脉使用平面(x / y)坐标,1个单位等于1米,用于所有计算。
(即使路线图使用平面坐标。要获得真实城市的平面路线图,.net.xml
文件的导入过程使用地图投影 - 例如,Veins 4.4教程模拟使用UTM投影)
因此,您可以使用简单的三角法来获取任意两点之间的距离(或者,因为大多数坐标是使用类Coord
存储的,您可以调用其distance
方法。
在模拟中获取任何汽车位置的推荐方法是调用其移动模块的getCurrentPosition
方法。
如果您绝对需要确定给定x / y位置的经度/纬度,则需要应用导入路线图时使用的地图投影的反转。如果.net.xml
文件中存在此信息,也可以通过调用TraCICommandInterface
的{{3}}函数来完成此操作(例如,在{{3中的教程模拟中获得) }})。