百度地图--api--获取经纬度

百度地图--api--获取经纬度,第1张

<html xmlns=">

用户通过点击地图上面的位置,在地图上面进行描点,然后再把获取的到的地理位置保存到地图上面的地址栏目中。

主要是百度地图API的使用

var map = new BMapMap("allmap"); //实例化一个地图对象

var point = new 

BMapPoint(116331398,39897445); //设置地图中心的位置

mapcenterAndZoom(point,12); 

//设置地图元素的可视层

mapenableScrollWheelZoom();    

//启用滚轮放大缩小,默认禁用

mapenableContinuousZoom();    

//启用地图惯性拖拽,默认禁用

function myFun(result){

    var cityName = 

resultname;

    mapsetCenter(cityName);

}

var myCity = new 

BMapLocalCity();

myCityget(myFun);

i=0

//点击获取坐标

mapaddEventListener("click",function(e){

    

if(i === 0)

    {

     //存储经纬度

     lng = epointlng;

     lat = 

epointlat;

     //在地图上面描点

     var marker = new BMapMarker(new 

BMapPoint(lng,lat));  // 创建标注

     mapaddOverlay(marker);

     

markerenableDragging();    //可拖拽

    var gc = new 

BMapGeocoder();

     //获取地址的数据地址

     var pt = epoint;

     

gcgetLocation(pt, function(rs){

     var addComp = 

rsaddressComponents;

     address = addCompprovince +  addCompcity + 

addCompdistrict + addCompstreet + addCompstreetNumber;

     

//画图

     var label = new BMapLabel(address,{offset:new 

BMapSize(20,-10)});

      markersetLabel(label);

     });

     

i=1;

    }

});

百度地图API获取坐标的地址:>

new BMapGeolocation()getCurrentPosition(function(r){

    //r为当前所在城市的信息。  

})

百度地图只能获取大概位置。 如果需要获取精准位置,需要使用设备的gps 提供的接口。 或者h5 提供的位置信息。 当然这个也不精准

利用百度地图api通过城市地址等信息取经纬度

原创 2016年05月18日 10:25:01

标签:

百度地图 /

微信 /

api /

url /

json

21454

标红的是可以通过经纬度获得当前城市信息(微信定位使用)。

Geocoding API有哪些功能?

Geocoding API包括地址解析和逆地址解析功能。

地址解析是指,由详细到街道的结构化地址得到百度经纬度信息,且支持名胜古迹、标志性建筑名称直接解析返回百度经纬度。例如:“北京市海淀区中关村南大街27号”地址解析的结果是“lng:11631985,lat:39959836”,“百度大厦”地址解析的结果是“lng:11630815,lat:40056885”

逆地址解析是指,由百度经纬度信息得到结构化地址信息。例如:“lat:31325152,lng:120558957”逆地址解析的结果是“江苏省苏州市虎丘区塔园路318号”。注意:

1因为Geocoding和反Geocoding使用的门址数据以及算法都不是一样的,所以会出现不能一一对应的现象。

2解析过程中可能会出现一对坐标值对应多个地址门牌信息,本接口将返回距离坐标点最近的一个地址门牌信息。

使用限制

目前无任何使用限制。请申请key,然后使用该接口。

如何使用

第一步,申请key,点击这里获取密钥,申请key需要注册百度账号;

第二步,拼写发送>

第三步,接收>

服务地址

>

>

备注:

1 city属于可选参数,通常情况可以不使用,若解析无结果,请尝试增加此字段。

2 支持名胜古迹、标志性建筑物名称解析返回百度经纬度坐标,如address=“百度大厦”。

3 支持使用“路与路交叉口”方式解析返回百度经纬度坐标,若地址库中存在该地址描述,返回百度经纬度坐标。

4 若解析status字段为OK,若结果内容为空,原因分析及可尝试方法:

5 特别提醒:逆地址解析location参数传入的参数格式是(纬度lat,经度lng)。

接口参数

参数

是否必须

默认值

格式举例

含义

output    否    json    json或xml    输出格式为json或者xml  

address    是    无    北京市海淀区上地十街10号    根据指定地址进行坐标的反定向解析  

location    是    无    3876623,11643213

lat<纬度>,lng<经度>    根据指定坐标来进行地址的解析  

city    否    “北京市”    “广州市”    地址所在的城市名  

key    是    无    8cb976834235d8cbcde2dce4835ae191    用户申请注册的key  

上表中address和location两个字段如果同时出现,则优先选择address执行地理编码功能。对于address字段可能会出现中文或其它一些特殊字符(如:空格),所以对于类似的字符都要进行编码处理,编码成 UTF-8 字符的二字符十六进制值,凡是不在下表中的字符都要进行编码。

字符集合

字符

URL非保留字    a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 – _ ~  

URL保留字    ! ‘ ( ) ; : @ & = + $ , /  % # [ ]  

附注:

(1) javascript中一般采用encodeURIComponent函数对特殊字符进行编码。

(2) Java中可以使用函数URLEncoderencode对特殊字符进行编码。

(3) C#中可以使用函数>

(4) php中可以使用函数urlencode对特殊字符进行编码。

返回数据说明

返回结果(地址解析的结果)

{status: '字符串状态常量', 取值如下:

//OK 成功

INVILID_KEY 非法密钥

INVALID_PARAMETERS 非法参数,参数错误时候给出。

result: {

location: {

lat: 纬度:数值,

lng: 经度:数值

},

precise:’位置的附加信息,是否精确查找’(1为精确查找,0为不精确查找),

confidence: 可信度,

level:'级别'

},

}

返回结果(反地址解析的结果)

{status: '字符串状态常量', 取值如下:

//OK 成功

INVILID_KEY 非法密钥

INVALID_PARAMETERS 非法参数,参数错误时候给出。

result: {

location: {

lat: 纬度:数值,

lng: 经度:数值

},

formatted_address: ‘详细地址描述’,

business: '周围商圈',

addressComponent:{

city:’城市名称’,

district: ‘区县名称’,

province:’省份名称’,

street: ‘街道名称’,

streetNumber: '门牌号码'

},

cityCode: '城市代码'

}

}

接口示例

根据详细地址获取坐标

>

//根据“上地十街10号”返回坐标“lng:116307175, lat:40057098”,以json格式输出

>

//根据“上地十街十号”返回坐标“lng:116307175, lat:40057098”,以xml格式输出

在指定城市内检索详细地址的坐标

>

// 在北京市内根据“上地十街10号”返回坐标“lng:116307175, lat:40057098”,以json格式输出

>

// 在北京市内根据“上地十街10号”返回坐标“lng:116307175, lat:40057098”,以json格式输出

根据特定建筑物获取它的坐标

>

>

>

//根据“北一环路和阜阳路的交叉路口”名称返回坐标“lng:117294364, lat:31885558”,以json格式输入

>

//根据“北一环路和阜阳路的交叉路口”名称返回坐标“lng:117294364, lat:31885558”,以xml格式输入

根据坐标获取它的地址

>

//解析“lat:39983424, lng:116322987”坐标返回“北京市海淀区中关村大街27号1101-08室”,以json格式输出

>

//解析“lat:39983424, lng:116322987”坐标返回“北京市海淀区中关村大街27号1101-08室”,以xml格式输出

地址库里无此数据,本次结果为空。

加入city字段重新解析;

将过于详细或简单的地址更改至省市区县街道重新解析;

逆地址解析:根据坐标获取地址

地址解析:根据地址获取坐标

百度地址>

找到管理员,通过管理员来帮忙查看url。

如果是第三方服务商做的百度小程序,那么查看url就可以直接找第三方服务商的工作人员,这样会更加快速方便的查看url地址。

以上就是关于百度地图--api--获取经纬度全部的内容,包括:百度地图--api--获取经纬度、百度地图 怎么获取当前城市、怎么用百度地图api自动获取当前位置(谷歌的也行)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9393258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存