百度地图:通过经纬度获得位置信息和距离

获取位置性息:先通过微信公众号获得经纬度,然后根据经纬度换取位置

<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.4"></script>
    <script>
                var signature = ‘@ViewBag.signature‘;
        //微信
        wx.config({
            debug: false,
            appId: ‘211‘,
            timestamp:12 ,
            nonceStr: ‘121‘,
            signature: signature,
            jsApiList: [
                ‘getLocation‘]
        });

        wx.ready(function () {
            wx.getLocation({
                success: function (res) {
                    var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
                    var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
                    var speed = res.speed; // 速度,以米/每秒计
                    var accuracy = res.accuracy; // 位置精度
                    getAddress(latitude, longitude);
                }, cancel: function (res) {
                    alert(‘用户拒绝授权获取地理位置‘);
                },
                fail: function (res) {
                    alert("获取位置失败");
                }
            });
        });
        function getAddress(latitude, longitude) {
            var map = new BMap.Map("allmap");
            var point = new BMap.Point(longitude, latitude);
            var gc = new BMap.Geocoder();
            gc.getLocation(point, function (rs) {
                var addComp = rs.addressComponents;
                var mapAddress = addComp.province + addComp.city + addComp.district
                    + addComp.street + addComp.streetNumber;
                vm.address = mapAddress;
            });
        }

计算距离:

/**
     * 计算两点间的距离
     * pt1 {lng:"12.34",lat:"3423"}第一个点的经纬度
     * pt2 {lng:"12.34",lat:"3423"}第二个点的经纬度
     * */
    getDistance:function(pt1,pt2){
        var map = new BMap.Map("container");
        var point1 = new BMap.Point(pt1.lng,pt1.lat);
        var point2 = new BMap.Point(pt2.lng,pt2.lat);
        var distance = map.getDistance(point1,point2);
        return distance;
    },

原文地址:https://www.cnblogs.com/zhuyapeng/p/11317000.html

时间: 2024-08-29 18:56:05

百度地图:通过经纬度获得位置信息和距离的相关文章

利用百度地图API获取当前位置信息

利用百度地图API可以做很多事情,个人感觉最核心也是最基础的就是定位功能了.这里分享一个制作的JS可以实现登录网页后定位: 1 <script type="text/javascript"> 2 var map; 3 var gpsPoint; 4 var baiduPoint; 5 var gpsAddress; 6 var baiduAddress; 7 var x; 8 var y; 9 function getLocation() { 10 //根据IP获取城市 1

关于百度地图根据经纬度获取城市信息的接口

1.首先登录百度地图开放平台,可以直接用百度账号,如果没有就申请一下: 2.登录之后,右上角有一个API控制台,点进去: 3.创建应用,填写应用名称,选择类型和服务,ip白名单可以填写0.0.0.0/0: 4.应用列表里面就会看到对应的ak: 5.http://api.map.baidu.com/geocoder/v2/?ak=AAAAA&location=BBBBB&output=json&pois=1 AAAAA为的ak BBBBB为lat,lng 中间用,隔开. 返回的jso

根据经纬度调用百度地图获取详细的位置信息

访问类似下面的网址: http://api.map.baidu.com/geocoder/v2/?ak=A1758accd4ec22544bc2f200e5c83a76&location=39,116&output=json&pois=0 location代表坐标的位置,前面是纬度,后面的是经度,中间用逗号隔开. output表示返回的格式,这里用的是json. 返回结果如下:

百度地图API定位+显示位置

1. 先在需要嵌入地图的页面引入map.js <script src="http://api.map.baidu.com/api?v=2.0&ak=你的秘钥"></script> 2. 地图定位并显示位置信息 // 百度地图API功能 var map = new BMap.Map("allmap"); var point = new BMap.Point(116.331398,39.897445); map.centerAndZoom

通过百度地图API显示当前位置在地图上(图标显示)--第三方开源--百度地图(二)

1.下载百度地图的demo,下载地址:http://lbsyun.baidu.com/sdk/download?selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool,mapsdk_radar 2.把demo里面的BaiduMapsApiDemo解压,把BaiduMapsApiDemo文件夹里面的libs里面的所有文件都复制到自己的项目的libs里面 3.配置Andro

HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地(转)

HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地 我是应用在微信中,自定义菜单,菜单直接链接到这个HTML5页面,获取当前位置后,页面中定好目的地,这样打开页面后直接进入导航页面 可以省下先发送位置信息后,点确定再出导航,省一步, <!DOCTYPE html> <html lang="zh-cmn-Hans"> <meta charset="UTF-8"> <meta name="viewpor

微信小程序自动定位,通过百度地图根据经纬度获取该地点所在城市信息

微信小程序获得经纬度 var that = this wx.getLocation({ type: 'wgs84', success(res) { console.log(res) that.setData({ latitude: res.latitude, longitude: res.longitude }) } }) 百度地图api 'https://api.map.baidu.com/geocoder/v2/?location=' + res.latitude+',' + res.lon

使用百度地图将经纬度转换成具体位置

1.申请百度地图的key: AK http://lbsyun.baidu.com/apiconsole/key http://lbsyun.baidu.com/apiconsole/key/create 最早的百度地图是不需要的这些流程的.但现在百度牛逼了.不申请或审核不通过不给用咯,配置请不要吝啬,全部勾选即可 2.找到开发文档 我们使用的的API叫做 [坐标逆转换],也叫[逆/地址解析] http://lbsyun.baidu.com/index.php?title=jspopular/gu

HTML5 利用百度地图API获取当前位置

由于项目需要定位到城市,研究了地理定位,做了一些手记,和大家分享一下~ 项目的开发需求是获取到当前用户的位置,然后为用户提供一些服务. 此时可以采用两种定位方式,一种是用GPS的定位,然后将定位到的经纬度传递到百度地图的API接口当中.另一种方法是利用百度API接口,使用IP地址定位,然后使用IP地址获取到的经纬度,传递到百度地图API接口中. 自己尝试使用了这两种方式进行定位.相对来说,IP地址定位,偏差比较大.GPS定位虽然还可以,但是也不足够精确.产生比较大偏差的原因有可能是以下几点造成的