gpt4 book ai didi

ios - 需要有关使用核心位置计算距离的帮助

转载 作者:行者123 更新时间:2023-11-28 22:35:19 25 4
gpt4 key购买 nike

我想使用 iPhone 并利用核心位置来计算赛车在赛道上的距离。场景是一次只有一辆车在轨道上,轨道也不直。它类似于 TopGear 程序,当他们在赛道上一辆接一辆地测试汽车时,您就会知道赛道不直。

我正在获取纬度、经度、速度并将其发送到 Web 服务器以实时监控。

我面临的问题是:

1> 汽车在轨道上行驶时,可以呈锯齿状行驶。轨道很宽,什么时候可以在上面跑,车可以在左车道、中间车道或右车道。在汽车换道期间,它的纬度和经度也会被记录下来。意思是如果你在纸上从上到下画一条蛇形,然后从上到下画一条直线,在我的场景中也是如此我想要实际距离?

我尝试了一些方法和教程,但在设备上运行代码并在房间中来回走动后,距离不断增加,但在轨道上无法避免这些小 Action 时,如何获得正确的距离?

2> 例如,如果轨道是“U”形并使用 distanceFromLocation: 它给出“U”点到点的距离,而不是整个“U”轨道距离,就像汽车从“U”左点指向“U”右点。如何计算整个“U”距离?

I am following this tutorial.

最佳答案

如果您正在记录所有的点,那么您可以遍历它们并将每对点之间的距离相加。获取所有点之间的距离(伪代码):

double distance = 0;
CLLocationCoordinate2D p1 = ...;
CLLocationCoordinate2D p2 = ...;

for (NSInteger i = 0; i < count; i++) {
distance += [self metresBetweenPlace1:p1 place2:p2];

p1 = p2;
p2 = ...;
}

- (double)metresBetweenPlace1:(CLLocationCoordinate2D)place1 andPlace2:(CLLocationCoordinate2D)place2
{
MKMapPoint start = MKMapPointForCoordinate(place1);
MKMapPoint finish = MKMapPointForCoordinate(place2);

return MKMetersBetweenMapPoints(start, finish);
}

关于ios - 需要有关使用核心位置计算距离的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16236671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com