我了解海平面以下为负,+以上为正的概念,可以通过垂直精度来检查此值的合理性。
我对飞行中的GPS数据感兴趣。 altitude
的最大值或近似最大值是多少,以便我可以将Flight与公路旅行区分开。
我知道我可以查询速度,但是速度本身并不能解决目的。
最佳答案
从GPS高度确定飞行的正确方法是在数据库中查找当前位置的地面海拔(纬度/经度)。如果GPS高度更高,则用户在飞行中(或在较高的建筑物中)。
这需要一个非常大的数据库,但是数据可用。这对于大多数应用程序可能不切实际。查找DEM数据(数字高程模型)数据库,例如SRTM,ASTER(请参阅here)
另一种方法是检测起飞。如果您只对喷气式飞机感兴趣,则需要检测从 100节的直线加速度,然后,如果GPS高度爬升> 1000 fpm,则很可能是在飞机起飞中(尽管大多数螺旋桨飞机也可以爬升到1000fpm以上)。
检测各种飞行(飞艇,热气球,轻型飞机)变得更加困难。尽管可以通过各种启发式方法来区分飞机和汽车,但很难区分。区分热气球与高层建筑,低水平运动以及两种情况的海拔都高于地面也将是困难的。
关于ios - CLLocation飞行中高度属性的有效性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52003623/