2016-09-19 281 views
1

之间计算距离,我想计算2点的纬度和经度之间的距离我已经看了两分,但我的主要动机约haversine公式和余弦的球法的计算距离以米为单位获得2点之间的最佳位置差异。如何将两个纬度和经度

对于实施例两个设备发生在彼此相邻,并且机器人装置正在发送位置服务器,因此,我们需要采取的每个设备的该位置,并计算在这些计2设备之间的最小距离。 差位置的应该是像2-3米当设备旁边放置到每个人

那么什么是可能的方式以米计算设备时,彼此相邻

两条器之间的最小距离编辑1:我需要计算我以kms或英里得到的距离,当设备彼此相邻时这是很大的差异。 Haversine公式余弦的球形法是我找到最好的方式来计算,但我需要做更多的这些公式之间获得2 device.Not在Android设备上的最小差异。这个问题是不相关的This Question

+0

@VladMatvienko我需要上列公式计算和结果上工作需要在米其可以在只有几米。阅读这两个问题的不同 – androidXP

+0

如果你没有计算Android中经度和纬度两点之间的距离,你不应该标记你的问题'android'或'谷歌地图',因为它们是不相关的。 – Pang

+0

你是什么意思*“两台设备之间的最小距离”*?两点之间的距离只是一个单一的值,所以你的意思是最小值?请在你的问题中解释。 – Pang

回答

2

可以计算两个纬度和经度的距离

Location loc1 = new Location(""); 

loc1.setLatitude(lat1); 
loc1.setLongitude(lon1); 

Location loc2 = new Location(""); 
loc2.setLatitude(lat2); 
loc2.setLongitude(lon2); 

float distanceInMeters = loc1.distanceTo(loc2); 
2
Location loc1 = new Location(""); 
loc1.setLatitude(lat1); 
loc1.setLongitude(lon1); 

Location loc2 = new Location(""); 
loc2.setLatitude(lat2); 
loc2.setLongitude(lon2); 

float distanceInMeters = loc1.distanceTo(loc2);