用于在数组中添加坐标的循环结构

时间:2015-03-10 22:45:03

标签: javascript arrays loops geolocation coordinates

我有一个坐标为的数组,并希望将它们相加以确定总距离(不仅仅是从A点到B点)。

我的数组的结构为latitude1,longitude1,latitude2,longitude2等等。

我必须编码以实际计算距离(如下所示),但不知道如何进行获取坐标所需的循环。

 function distance(lat1, lon1, lat2, lon2) {
   var R = 6371;
   var a = 
      0.5 - Math.cos((lat2 - lat1) * Math.PI / 180)/2 + 
      Math.cos(lat1 * Math.PI / 180) * Math.cos(lat2 * Math.PI / 180) * 
      (1 - Math.cos((lon2 - lon1) * Math.PI / 180))/2;

   return R * 2 * Math.asin(Math.sqrt(a));
 }

如何完成循环?

感谢。

1 个答案:

答案 0 :(得分:0)

有几种方法,我会这样做:

int sum(int[] array) {
 int sum = 0;
 for(int i = 0; i < array.size(); i++) {
  sum += distance(array[i], array[i+1], array[i+2], array[i+3]);
  i +=4;
 }
 return sum;
}