【发布时间】:2012-01-04 10:27:29
【问题描述】:
我在计算两个地理点之间的距离时遇到问题。
地理点是:
position1 = mapView.getProjection().fromPixels(
(int) e.getX(),
(int) e.getY());
还有一个
double lat = 35.1064;
double lng = 22.556412;
GeoPoint position2 = new GeoPoint((int)(lat * 1E6), (int)(lng * 1E6));
然后我创建两个位置:
Location loc = new Location("");
loc.setLatitude(position1.getLatitudeE6());
loc.setLongitude(position1.getLongitudeE6());
Location loc2 = new Location("");
loc.setLatitude(position2.getLatitudeE6());
loc.setLongitude(position2.getLongitudeE6());
然后我计算距离:
float distance = loc.distanceTo(loc2);
我把它圆了:
Math.round(distance);
但我得到的结果如下:
1.4331783E7
我做错了什么?
【问题讨论】:
-
查看此链接codecodex.com/wiki/…
-
为什么你认为 1.4331783E7 是错误的?
-
因为距离应该以米为单位,而我设置和点击的点最大为 100 米,所以我认为这不是我需要的结果!
标签: android google-maps