我在android中计算sqlite中纬度和经度的距离。首先,我必须从Web服务获取坐标,然后我必须使用以下代码将坐标从度数转换为弧度:
Math.cos(deg2rad(outlet.getLatitude()))
Math.sin(deg2rad(outlet.getLatitude()))
public static double deg2rad(double deg) {
return (deg * Math.PI / 180.0);
}
然后我将它插入到我的表中,然后我使用此查询来计算sqlite中的距离。当我运行此查询时:
SELECT "location",
(sin_lat_rad "sin_lat_rad" + cos_lat_rad "cos_lat_rad" *
(sin_lon_rad "sin_lon_rad" + cos_lon_rad "cos_lon_rad"))
中得到0.99999999