办的寝室开灯电脑断网网,手机方面没有问题,电脑显示已连接了,但上不去网

主题 : 根据地址,显示地图坐标图片,是调用的百度地图哪个API
级别: 圣骑士
可可豆: 2161 CB
威望: 2042 点
在线时间: 721(时)
发自: Web Page
来源于&&分类
根据地址,显示地图坐标图片,是调用的百度地图哪个API&&&
地址:XXXX经度:YYYY纬度:ZZZZ图中的地图图片,应该是在服务器端生成的吧,如果是在服务器生成的话,调用百度地图的哪个api呢,怎么没有找到呢?
级别: 圣骑士
可可豆: 2161 CB
威望: 2042 点
在线时间: 721(时)
发自: Web Page
好像是调用的百度静态图api。
级别: 新手上路
可可豆: 14 CB
威望: 14 点
在线时间: 80(时)
发自: Web Page
你可以按这个教程自设弹出框,就跟tablecell类似,不仅有图片,还能加各种东西。
级别: 精灵王
UID: 34556
发帖: 1330
可可豆: 1058 CB
威望: 2124 点
在线时间: 1525(时)
发自: Web Page
地理编码在ViewController.h中声明BMKSearch对象,并将ViewController实现BMKSearchDelegate协议,代码参考Demo中的示例代码.在ViewController.m中创建BMKSearch对象,设置对应的delegate,并实现BMKSearchDelegate协议中获取地理编码结果的方法,代码如下:源码复制打印关于&&&&- (void)viewDidLoad {&&&&&&&&&&[super viewDidLoad];&&&&&&&&_mapView.delegate =&&&&&&&&_search = [[BMKSearch alloc]init];&&&&&&&&_search.delegate =&&&&&&&&//发起地理编码&&&&&&&&[_search geocode:@&东长安街33号& withCity:@&北京&];&&&&&&&&}&&&&&&&&- (void)onGetAddrResult:(BMKSearch*)searcher result:(BMKAddrInfo*)result errorCode:(int)error&&&&&&&&{&&&&&&&&&&&&// 在此处添加您对地理编码结果的处理&&&&&&&&}&&
关注本帖(如果有新回复会站内信通知您)
苹果公司现任CEO是谁?2字 正确答案:库克
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版百度地图api如何使用
字体:[ ] 类型:转载 时间:
如果想用百度地图api,首先需要先获取一个百度地图api的密钥,然后引入百度地图的api,这篇文章就讲下百度地图api如何使用的相关资料,需要的朋友可以参考下
如果想用百度地图api,首先需要先获取一个百度地图api的密钥,然后引入百度地图的api,接下来,我们详细介绍下获取、引入api密钥的技巧,以及通过代码给大家详解下百度地图api如何使用,具体请看下文。
首先 ,如果想调用百度地图api,你需要获取一个百度地图api的密钥。
申请密钥很简单,在百度地图api的首页就有相关链接,填写相关信息百度就会给你一个密钥了。
接下来,就是引入百度地图的api
关键代码如下:
&script type="text/javascript" src="http://api./api?ak=yourkey&v=2.0&services=false"&&/script&
接下来我们就可以创建一个地图试试看了。(Js代码)
var map = new BMap.Map("container");&&&&&&&&& // 创建地图实例
var point = new BMap.Point(120..067588);& // 创建点坐标
map.centerAndZoom(point, 15);
//map.centerAndZoom("北京", 15);
//map.centerAndZoom("Hongkong", 15);&&&&
&&&&&&&&&&&
这里需要说明三点:
1.map.centerAndZoom方法创建地图,第一个参数可以是根据之前创建好的一个点为中心,创建出地图,也可以根据城市地区的中文名称创建地图。(如果拼写正确,可以根据城市的英文名称来创建)
2. map.centerAndZoom第二个参数是地图缩放级别,最大为19,最小为0。(但实际当缩小到3的时候就已经。。。)
3.BMap.Map方法创建地图时候需要一个容器(地图会根据容器的大小自动进行调整。),填写相关容器的id。
关于地图大小:
map.setZoom();
方法主动控制地图大小级别。
也可以通过设置
map.enableScrollWheelZoom(true);
利用鼠标滚轮控制大小。
百度地图提供了非常丰富的功能空间共我们使用。
1.Control:控件的抽象基类,所有控件均继承此类的方法、属性。通过此类您可实现自定义控件。
2.NavigationControl:地图平移缩放控件,PC端默认位于地图左上方,它包含控制地图的平移和缩放的功能。移动端提供缩放控件,默认位于地图右下方。
3.OverviewMapControl:缩略地图控件,默认位于地图右下方,是一个可折叠的缩略地图。
4.ScaleControl:比例尺控件,默认位于地图左下方,显示地图的比例关系。
5.MapTypeControl:地图类型控件,默认位于地图右上方(地图,卫星,三维)。
6.CopyrightControl:版权控件,默认位于地图左下方。
7.GeolocationControl:定位控件,针对移动端开发,默认位于地图左下方。
map.addControl(new BMap.NavigationControl());//缩放平移控件
map.addControl(new BMap.ScaleControl());&&& //比例尺
map.addControl(new BMap.OverviewMapControl());//缩略图
map.addControl(new BMap.MapTypeControl()); //地图类型
map.setCurrentCity("青岛");
注意:当设置城市信息时,MapTypeControl的切换功能才能可用
地图事件:
百度地图API中的大部分对象都含有addEventListener方法,我们可以通过该方法来监听对象事件。
map.addEventListener("click", function(){&&&
&alert("您点击了地图。");&&&
当我们不再希望监听事件时,可以将事件监听进行移除。每个API对象提供了removeEventListener用来移除事件监听函数。
map.removeEventListener("click", functionA);
map.addEventListener("click", functionA);
地图遮盖物:
Overlay:覆盖物的抽象基类,所有的覆盖物均继承此类的方法。
Marker:标注表示地图上的点,可自定义标注的图标。
Label:表示地图上的文本标注,您可以自定义标注的文本内容。
Polyline:表示地图上的折线。
Polygon:表示地图上的多边形。多边形类似于闭合的折线,另外您也可以为其添加填充颜色。
Circle: 表示地图上的圆。
InfoWindow:信息窗口也是一种特殊的覆盖物,它可以展示更为丰富的文字和多媒体信息。注意:同一时刻只能有一个信息窗口在地图上打开。
标注示例:
var point = new BMap.Point(120..072362);//默认 可以通过Icon类来指定自定义图标
var marker = new BMap.Marker(point);
var label = new BMap.Label("青岛市政府",{offset:new BMap.Size(20,-10)});//标注标签
marker.setLabel(label)//设置标注说明
marker.enableDragging();//标注可以拖动的
marker.addEventListener("dragend", function(e){
alert(e.point.lng + ", " + e.point.lat);//打印拖动结束坐标
map.addOverlay(marker);
var point = new BMap.Point(120..064835);
var myIcon = new BMap.Icon("http://api./img/markers.png", new BMap.Size(23, 25));
var marker2 = new BMap.Marker(point, {icon: myIcon});
map.addOverlay(marker2);
var infoWindow = Window("&p style='font-size:14'&详细信息&/p&"); //弹出窗口
marker2.addEventListener("click", function(){
this.openInfoWindow(infoWindow);
以上说明就是本文的全部内容,希望对大家使用百度地图api有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具百度地图API--标注域 - 推酷
百度地图API--标注域
文本标注域
我们可以在地图上添加一些本文覆盖物,用来标注一些信息,前一节我们学习了标注点的使用以及标注点的点击和拖拽事件,标注点用到了BMap命名空间下的Marker类,文本标注域则是用到了Label类,下面介绍如何添加一个文本标注域。
* 添加文本标注
function addTextMarker(map) {
var opts = {
position : map.getCenter(), // 指定文本标注所在的地理位置
offset : createSize(30, -30) // 设置文本偏移量,createSize方法在Global.js中
var label = new BMap.Label(&欢迎使用百度地图,我是简单的文本标注~&,
opts); // 创建文本标注对象
label.setStyle({
color : &red&,
fontSize : &12px&,
height : &20px&,
lineHeight : &20px&,
fontFamily : &微软雅黑&
map.addOverlay(label);
除了可以在地图上添加固定的文本域,还可以给特定的位置添加热区域,当鼠标放到这个位置的时候就会展示出来,鼠标移开后隐藏。
* 添加热区
function addHotArea(map) {
//在长安大学添加一个热区,鼠标放上,会出现提示文字
var hotSpot = new BMap.Hotspot(map.getCenter(), {
text : &Hello,这里是长安大学,欢迎来自五湖四海的学习前来就读噢~&,
// 设置缩放比例区间,不在此区间时,热区不会显示
minZoom : 8,
maxZoom : 18
map.addHotspot(hotSpot);
我们可以在地图上标注出中国的的所有的行政区域,其实思路很简答,就是拿到地方的边界,然后以边界的所有点作为多边形的点,添加一个多边形覆盖物。
* 获取行政区边界,封装成方法
function getBoundary(map, city) {
var bdary = new BMap.Boundary();
bdary.get(city, function(rs) { //获取行政区域
var count = rs.boundaries. //行政区域的边界的点数
for (var i = 0; i & i++) {
//建立多边形覆盖物
var ply = new BMap.Polygon(rs.boundaries[i], {
strokeWeight : 2,
strokeColor : &#ff0000&
map.addOverlay(ply); //添加覆盖物
//map.setViewport(ply.getPath()); //调整视野
* 添加边界
function addBoundary(map) {
map.clearOverlays(); //清除地图覆盖物
getBoundary(map, '湖北');
getBoundary(map, '北京');
getBoundary(map, '上海');
getBoundary(map, '四川');
getBoundary(map, '重庆');
getBoundary(map, '西安');
getBoundary(map, '武汉');
getBoundary(map, '渭南');
getBoundary(map, '黄石');
getBoundary(map, '排市');
往地图添加圆用到了BMap.Circle类,只需要指定圆心和周长。
function addCircle(map) {
var circle = new BMap.Circle(map.getCenter(), 500);
map.addOverlay(circle);
往地图中添加多边形用到了BMap.Polygon类,形式跟上一节介绍的折线相似。
* 添加多边形
function addPolygon(map) {
var xiAnPosition = map.getCenter();
var hangzhouPosition = new BMap.Point(120..314429);
var taiwanPosition = new BMap.Point(121..127053);
var polygon = new BMap.Polygon([ xiAnPosition, hangzhouPosition,
taiwanPosition ], {
strokeColor : &red&,
strokeWeight : 5,
strokeOpacity : 0.5
map.addOverlay(polygon);
矩形就是特殊的多边形,添加方式是一样的,只不过要获取能够成矩形的四个点需要一定的技巧。
* 添加矩形
function addRectangle(map) {
var pStart = new BMap.Point(108..238584);
var pEnd = new BMap.Point(108..278584);
map.centerAndZoom(&西安&, 13);
var polygon = new BMap.Polygon([
new BMap.Point(pStart.lng, pStart.lat),
new BMap.Point(pEnd.lng, pStart.lat),
new BMap.Point(pEnd.lng, pEnd.lat),
new BMap.Point(pStart.lng, pEnd.lat) ], {
strokeColor : &red&,
strokeWeight : 6,
strokeOpacity : 0.5
map.addOverlay(polygon);
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致通过百度地图api获得坐标或者反向查询地址 - 开源中国社区
当前访客身份:游客 [
当前位置:
发布于 日 12时,
调用百度地图提供的坐标/地址解析,获得对应的地址/坐标,可拓展
调用时需要注册百度并
(暂时无限制),然后在程序中代替your_key
第一次使用,发现如果查询不到结果时,返回json中status也是ok,但是result返回为空list,不知为何。
由地址解析坐标时,尽量使用街道的相交路口查询。对于未指定城市而应获得多个结果的情况,实际上获得与无结果一样的输出。暂不知如何解决。
平台 :Python2.7,
Geocoding API
v1.0,windows XP
参考页面:/map/geocoding-api.htm
代码片段(2)
test.py&~&260B&&&&
from baidumap import xBaiduMap
bm=xBaiduMap()
print bm.getLocation("红旗大街淮河路",'哈尔滨')
print bm.getLocation("人民路沙浦路")
print bm.getLocation("人民路沙浦路",'广州')
print bm.getAddress(30..079473)
baidumap.py&~&2KB&&&&
#-*- coding:utf-8 -*-
import urllib2,urllib,httplib
import json
class xBaiduMap:
def __init__(self,key='your_key'):
self.host='http://api.'
self.path='/geocoder?'
self.param={'address':None,'output':'json','key':key,'location':None,'city':None}
def getLocation(self,address,city=None):
rlt=self.geocoding('address',address,city)
if rlt!=None:
l=rlt['result']
if isinstance(l,list):
return None
return l['location']['lat'],l['location']['lng']
def getAddress(self,lat,lng):
rlt=self.geocoding('location',"{0},{1}".format(lat,lng))
if rlt!=None:
l=rlt['result']
return l['formatted_address']
#Here you can get more details about the location with 'addressComponent' key
#ld=rlt['result']['addressComponent']
#print(ld['city']+';'+ld['street'])
def geocoding(self,key,value,city=None):
if key=='location':
if 'city' in self.param:
del self.param['city']
if 'address' in self.param:
del self.param['address']
elif key=='address':
if 'location' in self.param:
del self.param['location']
if city==None and 'city' in self.param:
del self.param['city']
self.param['city']=city
self.param[key]=value
r=urllib.urlopen(self.host+self.path+urllib.urlencode(self.param))
rlt=json.loads(r.read())
if rlt['status']=='OK':
return rlt
print "Decoding Failed"
return None
开源中国-程序员在线工具:
地址解析最头疼~
2楼:Ev4n 发表于
引用来自“kiwivip”的评论
地址解析最头疼~
坐标系反倒是很头疼。
3楼:yuzaiyou 发表于
为什么直接运行会
There is an error in your program:invalid
4楼:Ev4n 发表于
引用来自“yuzaiyou”的评论为什么直接运行会
There is an error in your program:invalid
一直没看到。还能看到详细的报错信息么?
5楼:蚂蚁浩 发表于
/map/index.php?title=webapi/guide/webservice-geocoding 直接看这里好啦
开源从代码分享开始
Ev4n的其它代码}

我要回帖

更多关于 没有问题的我们 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信