hh
hh
  • 发布:2014-10-08 13:56
  • 更新:2018-08-22 10:30
  • 阅读:3270

地图中 获取两坐标点间的距离

分类:MUI

利用html5+的API,先构造一个routeObj,然后取route的distance计算距离,代码如下:

var aa=new plus.maps.Point(116.384902,39.928391);
var bb=new plus.maps.Point(119.572351,32.874547);
var routeObj = new plus.maps.Route(aa,bb);
alert(routeObj.distance);

为什么这样得到的结果始终为0呢?

或者怎么获取两坐标点间的距离?

谢谢~

2014-10-08 13:56 负责人:无 分享
已邀请:
hh

hh (作者)

或者自己写js代码实现?

NZH

NZH

function toRad(d) { return d Math.PI / 180; }
function getDisance(lat1, lng1, lat2, lng2) { #lat为纬度, lng为经度, 一定不要弄错
var dis = 0;
var radLat1 = toRad(lat1);
var radLat2 = toRad(lat2);
var deltaLat = radLat1 - radLat2;
var deltaLng = toRad(lng1) - toRad(lng2);
var dis = 2
Math.asin(Math.sqrt(Math.pow(Math.sin(deltaLat / 2), 2) + Math.cos(radLat1) Math.cos(radLat2) Math.pow(Math.sin(deltaLng / 2), 2)));
return dis * 6378137;
}
alert( getDisance(39.91917,116.3896,39.91726,116.3940) );

aQiu

aQiu

同问,请问您解决了吗

该问题目前已经被锁定, 无法添加新回复

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容