Qt 在qml地图组件中模拟逐轮导航

Qt 在qml地图组件中模拟逐轮导航,qt,dictionary,navigation,qml,openstreetmap,Qt,Dictionary,Navigation,Qml,Openstreetmap,基本上,我制作了一个基于osm的qml映射。我可以在上面显示路线。现在,我需要模拟一个点或圆沿路线移动,无论何时左转或右转,都需要发出信号。非常感谢任何指向相关资源的指针。这里是QtLocation 5.9中的一种可能方法: 定义机动的围栏距离阈值 定义与管线的距离阈值 然后使用MapRoute中的坐标构建QGeoPath,并将路径宽度设置为上面的第二个阈值 然后,在每次gps更改时(也许您可以对此进行一点速率限制),检查两件事: 位置和下一次机动之间的距离小于机动阈值。如果是这样,以某种

基本上,我制作了一个基于osm的qml映射。我可以在上面显示路线。现在,我需要模拟一个点或圆沿路线移动,无论何时左转或右转,都需要发出信号。非常感谢任何指向相关资源的指针。

这里是QtLocation 5.9中的一种可能方法:

  • 定义机动的围栏距离阈值
  • 定义与管线的距离阈值
然后使用MapRoute中的坐标构建QGeoPath,并将路径宽度设置为上面的第二个阈值

然后,在每次gps更改时(也许您可以对此进行一点速率限制),检查两件事:

  • 位置和下一次机动之间的距离小于机动阈值。如果是这样,以某种方式显示该动作,然后前进到下一个动作

  • 位置和路线之间的距离(path.contains())。如果超过此阈值,则可能需要启动另一个路线计算,因为您最终偏离了路线


您不能使用GraphHopper或OSRM提供的逐轮导航说明吗?也许可以集成web组件之类的工具