小编jhe*_*uch的帖子

使用 Lat /Lon 计算从 A 点到线段的距离

我正在开发一个使用 GPS 的 Android 应用程序。我想知道如果“新位置”(C 点)离线段 AB 太远,是否有办法丢弃 GPS 位置数据。我正在使用Wikipedia 上的 Point to Line Segment 公式。

到目前为止,当我尝试使用纬度和经度坐标时,我拥有的代码正在返回 NaN。

private void verifyGPSLocation(Location start, Location end, Location current){
    final double errorValue = 0.0000216;
    double normalLength = Math.hypot(end.getLatitude() - start.getLatitude(), end.getLongitude() - start.getLongitude());
    double ret = Math.abs(((current.getLatitude() - start.getLatitude()) * (end.getLongitude() - start.getLongitude()) - (end.getLatitude() - start.getLatitude()))/normalLength );
    Log.e("Coooooord", normalLength+"--"+ret);
}
Run Code Online (Sandbox Code Playgroud)

这是我的第一篇文章,所以如果我没有正确完成此操作或提供足够的信息,请告诉我。感谢您的帮助,我喜欢这个网站!

java gps android latitude-longitude

5
推荐指数
1
解决办法
4720
查看次数

标签 统计

android ×1

gps ×1

java ×1

latitude-longitude ×1