位置: IT常识 - 正文

百度地图API的使用(附案例)(百度地图api的使用)

编辑:rootadmin
百度地图API的使用(附案例) 文章目录JavaScript API GL一、申请秘钥Hello World显示地址案例定位功能步行导航搜索功能地铁路线规划JavaScript API GL

推荐整理分享百度地图API的使用(附案例)(百度地图api的使用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:百度地图接入api,百度地图api的使用教程,百度地图api的使用场景,百度地图api的使用,百度地图api的使用教程,百度地图api的使用场景,百度地图api的使用方法,百度地图api的使用场景,内容如对您有帮助,希望把文章链接给更多的朋友!

百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,可帮助您在网站中构建功能丰富、交互性强的地图应用,支持PC端和移动端基于浏览器的地图应用开发,且支持HTML5特性的地图开发。

一、申请秘钥

在控制台里选择创建应用

选择浏览器端,白名单输入*

Hello World

我们直接把文档内的代码cv过来,加上秘钥就可以直接使用地图了

<!DOCTYPE html><html><head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Baidu Map </title> <style type="text/css"> html { height: 100% } body { height: 100%; margin: 0px; padding: 0px } #container { height: 100% } </style></head><body> <div id="container"></div></body><script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=******"></script><script> var map = new BMapGL.Map("container"); // 创建地图实例 var point = new BMapGL.Point(116.404, 39.915); // 创建点坐标 map.centerAndZoom(point, 15); map.enableScrollWheelZoom(true); </script></html>

显示地址案例百度地图API的使用(附案例)(百度地图api的使用)

我们向地图添加标注点和信息窗口

<!DOCTYPE html><html><head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Baidu Map </title> <style type="text/css"> html { height: 100% } body { height: 100%; margin: 0px; padding: 0px } #container { height: 100% } </style></head><body> <div id="container"></div></body><script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=*****"></script><script> var map = new BMap.Map("container"); var point = new BMap.Point(116.404, 39.915); map.centerAndZoom(point, 15); var marker = new BMap.Marker(point); // 创建标注 marker.enableDragging(); marker.addEventListener("dragend", function(e){ alert("当前位置:" + e.point.lng + ", " + e.point.lat); }) map.addOverlay(marker); var opts = { width : 250, // 信息窗口宽度 height: 100, // 信息窗口高度 title : "这里是天安门" // 信息窗口标题 } var infoWindow = new BMap.InfoWindow("", opts); // 创建信息窗口对象 map.openInfoWindow(infoWindow, map.getCenter()); // 打开信息窗口</script></html>

定位功能

我们可以拖动标注点来获取到标注点的坐标

<!DOCTYPE html><html><head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Baidu Map </title> <style type="text/css"> html { height: 100% } body { height: 100%; margin: 0px; padding: 0px } #container { height: 100% } </style></head><body> <div id="container"></div></body><script type="text/javascript" src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=******"></script><script> var map = new BMapGL.Map("container"); // 创建地图实例 var point = new BMapGL.Point(116.404, 39.915); // 创建点坐标 map.centerAndZoom(point, 15); map.enableScrollWheelZoom(true); var point = new BMapGL.Point(116.404, 39.915); var marker = new BMapGL.Marker(point); // 创建标注 map.addOverlay(marker); marker.enableDragging(); marker.addEventListener("dragend", function(e){ alert("当前位置:" + e.point.lng + ", " + e.point.lat); }) </script></html>

步行导航

我们已经学会使用标注点了 那么我们就可以创建2个标注点来设计步行路线

<!DOCTYPE html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <title>步行路线规划</title> <script type="text/javascript" src="//api.map.baidu.com/api?v=3.0&ak=*******"></script> <style type="text/css"> body, html, #container { width: 100%; height: 100%; overflow: hidden; margin: 0; font-family: "微软雅黑"; } </style></head><body> <div id="container"></div> <script type="text/javascript"> var points = []; var map = new BMap.Map("container"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 14); map.addEventListener('click', function (e) { if(points.length==2){ map.clearOverlays() points=[]; } var point = new BMap.Point(e.point.lng, e.point.lat) points.push(point) var marker = new BMap.Marker(point); map.addOverlay(marker); if (points.length == 2) { var walking = new BMap.WalkingRoute(map, { renderOptions: { map: map, autoViewport: true } }); walking.search(points[0], points[1]); } }) </script></body></html>

搜索功能

使用local.search()来实现搜索功能

<html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <style type="text/css"> body, html { width: 100%; height: 100%; margin: 0; font-family: "微软雅黑"; } #allmap { width: 100%; height: 500px; } .ipt{ margin: 20px auto; width: 350px; } input { font-size: 14px; width: 300px; display: inline-block; } </style> <script type="text/javascript" src="//api.map.baidu.com/api?v=3.0&ak=****"></script> <title>根据关键字本地搜索</title></head><body> <div class="ipt"> <input type="text"> <button>搜索</button> </div> <div id="allmap"></div></body></html><script type="text/javascript"> // 百度地图API功能 var map = new BMap.Map("allmap"); map.centerAndZoom(new BMap.Point(116.404, 39.915), 11); var local = new BMap.LocalSearch(map, { renderOptions: { map: map } }); var ipt=document.querySelector('input'); // console.log(ipt) var btn=document.querySelector('button'); btn.onclick=function(){ // alert('aa') local.search(ipt.value); ipt.value='' }</script>

地铁路线规划

原理跟地图路线规划一样,添加两个标注点,根据标注点来规划路线

<!DOCTYPE html><html><head> <meta charset="utf-8" /> <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <title>线路规划</title> <script type="text/javascript" src="//api.map.baidu.com/api?type=subway&v=1.0&ak=*****"></script> <style type="text/css"> #container { height: 100% } </style></head><body> <div id="container"></div> <script type="text/javascript"> var subwayCityName = '广州'; var list = BMapSub.SubwayCitiesList; var subwaycity = null; for (var i = 0; i < list.length; i++) { if (list[i].name === subwayCityName) { subwaycity = list[i]; break; } } // 获取广州地铁数据-初始化地铁图 var subway = new BMapSub.Subway('container', subwaycity.citycode); var zoomControl = new BMapSub.ZoomControl({ anchor: BMAPSUB_ANCHOR_BOTTOM_RIGHT, offset: new BMapSub.Size(10, 100) }); subway.addControl(zoomControl); var zoomControl = new BMapSub.ZoomControl({ anchor: BMAPSUB_ANCHOR_BOTTOM_RIGHT, offset: new BMapSub.Size(10, 100) }); subway.addControl(zoomControl); var points = []; subway.addEventListener('tap', function (e) { if (points.length == 0) { var startIcon = new BMapSub.Icon( 'https://api.map.baidu.com/images/subway/start-bak.png', new BMapSub.Size(50, 80) ); var marker = new BMapSub.Marker(e.station.name, { icon: startIcon }); subway.addMarker(marker); subway.setCenter(e.station.name); subway.setZoom(1); points.push(e.station.name) } else { var startIcon = new BMapSub.Icon( 'https://api.map.baidu.com/images/subway/end-bak.png', new BMapSub.Size(50, 80) ); var marker = new BMapSub.Marker(e.station.name, { icon: startIcon }); subway.addMarker(marker); subway.setCenter(e.station.name); subway.setZoom(1); points.push(e.station.name) var drct = new BMapSub.Direction(subway); drct.search(points[0], points[1]); subway.clearOverlays() points = [] } }); </script></body></html>

本文链接地址:https://www.jiuchutong.com/zhishi/295344.html 转载请保留说明!

上一篇:YOLOv5 txt标签转图像标签(多个标签)(yolov5标签格式)

下一篇:三维重建(单目、双目、多目、点云、SFM、SLAM)(单图像三维重建)

  • 渠道顶层设计的三大法宝,用好了的达利和老干妈都成功了(渠道层次的概念)

    渠道顶层设计的三大法宝,用好了的达利和老干妈都成功了(渠道层次的概念)

  • java matcher(java matcher pattern)

    java matcher(java matcher pattern)

  • 粘贴板记录在手机哪里找(粘贴板记录在手机哪里找华为)

    粘贴板记录在手机哪里找(粘贴板记录在手机哪里找华为)

  • 瞩目无法启动摄像头(瞩目为什么无法启动视频)

    瞩目无法启动摄像头(瞩目为什么无法启动视频)

  • 美团信任分最高多少(美团信任分最低多少最高多少分)

    美团信任分最高多少(美团信任分最低多少最高多少分)

  • 安卓手机如何打开.kux文件(安卓手机如何打开exe文件)

    安卓手机如何打开.kux文件(安卓手机如何打开exe文件)

  • 荣耀30是双模5g吗(荣耀30是双模手机吗)

    荣耀30是双模5g吗(荣耀30是双模手机吗)

  • vivo手机y50什么时候上市的(vivo y50手机是5g手机吗)

    vivo手机y50什么时候上市的(vivo y50手机是5g手机吗)

  • 删除的联系人能恢复吗(删除的联系人能找回来吗)

    删除的联系人能恢复吗(删除的联系人能找回来吗)

  • 小米常驻通知可以关闭吗(小米常驻通知可以关掉吗)

    小米常驻通知可以关闭吗(小米常驻通知可以关掉吗)

  • 爱奇艺怎么换高清(爱奇艺会员高清怎么设置)

    爱奇艺怎么换高清(爱奇艺会员高清怎么设置)

  • ps怎么给照片加相框(ps怎么给照片加暗角)

    ps怎么给照片加相框(ps怎么给照片加暗角)

  • 微信官方收款码怎么取消(微信官方收款码和商家收款一样吗)

    微信官方收款码怎么取消(微信官方收款码和商家收款一样吗)

  • ios13怎么更换壁纸(13怎么换壁纸)

    ios13怎么更换壁纸(13怎么换壁纸)

  • 苹果x怎么弄呼吸灯(苹果x怎么呼唤)

    苹果x怎么弄呼吸灯(苹果x怎么呼唤)

  • 京东评价错了怎么删除(京东购物评价错了怎么撤回)

    京东评价错了怎么删除(京东购物评价错了怎么撤回)

  • oppok1有nfc功能吗在哪里(oppok1支不支持nfc)

    oppok1有nfc功能吗在哪里(oppok1支不支持nfc)

  • vivoy93有图案解锁吗(vivoy93手机的图案锁在哪里设置)

    vivoy93有图案解锁吗(vivoy93手机的图案锁在哪里设置)

  • 小米手机画图功能在哪(小米手机绘制图形)

    小米手机画图功能在哪(小米手机绘制图形)

  • 抖音手机号不用了怎么登录(抖音手机号不用了怎么改密码)

    抖音手机号不用了怎么登录(抖音手机号不用了怎么改密码)

  • 流量显示e怎么换成4g(流量符号显示e)

    流量显示e怎么换成4g(流量符号显示e)

  • word如何设置页数(word如何设置页脚)

    word如何设置页数(word如何设置页脚)

  • 腾讯会员如何关闭自动续费(腾讯会员如何关闭自动续费微信)

    腾讯会员如何关闭自动续费(腾讯会员如何关闭自动续费微信)

  • word怎么把图片转为文字(word怎么把图片设置成一样大小)

    word怎么把图片转为文字(word怎么把图片设置成一样大小)

  • 交车辆购置税会计账务处理
  • 税前利润税率
  • 国际重复征税的前提条件是
  • 行政事业单位决算编制流程图
  • 临时工工资怎么申报个人所得税
  • 小规模纳税人税率有几种
  • 企业进项发票不够销项开的多
  • 建筑工程免税项目
  • 向境外分派红利怎么计算缴纳企业所得税
  • 应收账款确认无法收回分录
  • 出纳需要填哪些表
  • 部分退货退款剩下的钱什么时候给卖家
  • 买机票返钱
  • 冲回年初未年初分配利润分录
  • 记名预付卡不得设置有效期不可赎回
  • 增值税普通发票和普通发票的区别怎么交税
  • 旅游服务费可以抵扣增值税
  • 限售股转让个人所得税
  • 福利费专票进项抵扣转出怎么做账
  • 关联方之间债务豁免账务处理
  • 财产清查的会计分录
  • 原材料计入什么账本
  • 广告业财政拨款包括哪些
  • 公司章程签署
  • 增值税要不要计入固定资产的成本中?
  • 生产企业结账流程
  • 汽车修理公司的成本怎么核算
  • php使用memcache
  • 微软商店 低价区
  • 如何利用路由器登陆花生壳
  • 最贵的苹果电脑99万
  • php pop
  • php获取前一天的时间
  • mysqldump命令不存在
  • 行政事业性收费是什么意思
  • 企业自建房出售给员工个人后还需要缴纳土地使用税么
  • 进项税额转出需要补税
  • 资产计税基础填资产原值吗
  • php判断useragent
  • 企业自产自用产品要确认收入吗
  • mysql如何分类
  • mysql 管理员登录
  • 外国专家经费管理办法
  • 过户车子需要带什么证件
  • 税控系统专用设备抵减增值税账务处理
  • 不同利益主体之间的利益如何协调
  • 内账会计工作职责和工作流程
  • 未分配利润是什么会计科目
  • 什么是盈余公积和资本公积的区别
  • sqlserver获取当天零点时间
  • centos 启动gnome
  • fedora29
  • solaris配置ip地址
  • 硬盘安装操作系统出现,两个操作系统怎么选择
  • 重装win7旗舰版系统教程
  • WIN10系统睡眠后点不动
  • ubuntu命令行添加用户
  • dropbox怎么在国内使用
  • linux chkdsk
  • windows启动很慢很慢
  • xp怎么改密码怎么设置
  • 我们如何成为专业人员
  • Win10控制面板打不开
  • 用git打更新包的代码
  • css布局的经典网站
  • 人走鸟不惊,出自于谁的诗句?
  • linux shell 技巧
  • js dom方法
  • javascript的
  • centos6.5
  • 仿京东商城源码
  • python socket用法
  • js使用类
  • 安卓cts认证
  • 药店买药开票吗
  • 国家税务局通用机打发票查询
  • 四川增值税发票查验平台
  • 江苏食品经营许可证企业端官网
  • 可以在企业所得税税前扣除的税金
  • 北京市停车发票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设