位置: 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)(单图像三维重建)

  • 抖音如何看别人在线状态(抖音如何看别人主页不被发现)

    抖音如何看别人在线状态(抖音如何看别人主页不被发现)

  • 财付通自动扣钱怎么解除(财付通自动扣钱怎么追的回来)

    财付通自动扣钱怎么解除(财付通自动扣钱怎么追的回来)

  • 荣耀30s支持红外线功能吗(荣耀带红外功能的手机)

    荣耀30s支持红外线功能吗(荣耀带红外功能的手机)

  • 小米手机屏保怎么设置(小米手机屏保怎么换照片)

    小米手机屏保怎么设置(小米手机屏保怎么换照片)

  • 戴尔g3按开机后反应(戴尔g3按开机后开不了机)

    戴尔g3按开机后反应(戴尔g3按开机后开不了机)

  • 微信未实名认证会封号吗(微信未实名认证为什么还可以收转账)

    微信未实名认证会封号吗(微信未实名认证为什么还可以收转账)

  • 安装虚拟机对电脑有什么影响(安装虚拟机对电脑硬件有什么要求)

    安装虚拟机对电脑有什么影响(安装虚拟机对电脑硬件有什么要求)

  • link act是什么接口(linkactived)

    link act是什么接口(linkactived)

  • 优酷弹幕怎么没了(优酷弹幕怎么没有了电脑显示)

    优酷弹幕怎么没了(优酷弹幕怎么没有了电脑显示)

  • 广角摄像头是什么意思(广角摄像头是什么原理)

    广角摄像头是什么意思(广角摄像头是什么原理)

  • 电脑黑屏开不了机(电脑黑屏开不了机维修需要多少钱)

    电脑黑屏开不了机(电脑黑屏开不了机维修需要多少钱)

  • 快手怎么全屏看视频(快手怎么全屏看图)

    快手怎么全屏看视频(快手怎么全屏看图)

  • 手机指南针怎么看方向(手机指南针怎么不动了)

    手机指南针怎么看方向(手机指南针怎么不动了)

  • 乐视2如何显示网络连接数据(乐视现在在电视上怎么显示)

    乐视2如何显示网络连接数据(乐视现在在电视上怎么显示)

  • 拼多多怎么设置无需物流(拼多多怎么设置让别人看不见你买的东西)

    拼多多怎么设置无需物流(拼多多怎么设置让别人看不见你买的东西)

  • 剪映怎么添加歌词(剪映怎么添加歌曲名字)

    剪映怎么添加歌词(剪映怎么添加歌曲名字)

  • 微信群被踢出显示啥呀(微信被踢出群聊后显示的人数是什么意思)

    微信群被踢出显示啥呀(微信被踢出群聊后显示的人数是什么意思)

  • 网易云音乐可以看到访客吗(网易云音乐可以登录两个手机吗)

    网易云音乐可以看到访客吗(网易云音乐可以登录两个手机吗)

  • airpods怎么更新固件(AirPods怎么更新测试版固件)

    airpods怎么更新固件(AirPods怎么更新测试版固件)

  • 苹果6sp怎么录屏幕视频(苹果6sp怎么录屏功能在哪里)

    苹果6sp怎么录屏幕视频(苹果6sp怎么录屏功能在哪里)

  • 华为p30pro怎么取卡(华为p30pro怎么取消屏幕锁)

    华为p30pro怎么取卡(华为p30pro怎么取消屏幕锁)

  • 芒果tv如何发弹幕(芒果tvhd版本怎么发弹幕)

    芒果tv如何发弹幕(芒果tvhd版本怎么发弹幕)

  • 琥珀山国家公园里的豹变色龙,马达加斯加 (© Christian Ziegler/Minden Pictures)(琥珀山庄位于我国哪个省)

    琥珀山国家公园里的豹变色龙,马达加斯加 (© Christian Ziegler/Minden Pictures)(琥珀山庄位于我国哪个省)

  • 小规模缴纳企业所得税会计分录
  • 一般纳税人预缴税款几个点
  • 什么是税收收入效应
  • 土地增值税税率2023
  • 按份共同保证和连带共同保证
  • 所得税申报表的营业收入包括营业外收入吗
  • 分摊房屋租赁费计入什么科目
  • 年报零申报的103怎么填
  • 发票校验码看不清怎样查真伪
  • 退去年的教育费附加
  • 进项票错了但是销项票开出去了怎么办
  • 公司股东没有认缴资金
  • 商业折扣应交税费
  • 会计凭证 借贷
  • 房产税收取标准有哪些
  • 会计发票怎么样粘贴,记账凭证也要粘上吗
  • 企业所得税税前扣除异常是什么意思
  • 货物赔偿款会计分录
  • 计提成本会计分录怎么做
  • 定额发票去年的能用吗
  • 增值税专票盖章盖在哪里
  • 公司支付广告服务费账务处理
  • 房地产企业有投资性房地产吗
  • 房屋租赁合同如何办理
  • 保险公司代收车船税完税证明在哪里打印
  • 劳务报酬和个人工资的区别
  • 做金融服务要什么资格
  • 原材料入库如何分类
  • 如何填写企业所得税
  • 预计毛利率
  • 建筑公司小规模纳税人怎么做账报税
  • 税盘的服务费
  • 广告公司的成本是什么
  • linux运行后出现乱码
  • 清除cookies有什么用
  • office2016安全模式
  • php怎么连接服务器
  • 在Linux系统中安装Samba服务器
  • 购买销售商品
  • window显示我的电脑
  • 房贷每月利息如何算
  • 长期债券投资业务处理
  • cuda版本更新
  • devtools无法加载源映射less.map
  • 连接云服务器超时
  • 可供出售金融资产的会计处理
  • 企业利润总额为负
  • 归一化的几种方法
  • vue学不懂怎么办
  • 什么是AI工具
  • 印花税每个月都报吗
  • mysql skip ssl
  • 矿产资源补偿费计入管理费用吗
  • 收到个税手续费返还怎么做分录
  • 期间费用逐年上升说明什么
  • 进项税额转出为什么加到销项税额里
  • 每月增值税怎么做账
  • 企业所得税如何计算应纳税所得额
  • 现金支票存根联丢失怎么办
  • 人力资源差额税率
  • 现金流量表和利润表的勾稽关系
  • 其他流动资产为什么包括应交增值税
  • 折现率的选择主要是根据什么来判断
  • 新单位怎么建账
  • mysql数据库自动重启
  • win7桌面和win10桌面
  • bios怎么调高性能
  • winxp无法删除文件
  • linux awk '{print $0}'
  • win10如何快速打开设置
  • linux扫描硬件
  • jQuery中trigger()与bind()用法分析
  • js点击div改变css样式
  • javascript的代码写在哪里
  • javascript学习指南
  • 北京市地方税务局发票查验
  • 铁岭医保网上怎么交费
  • 纳税信用b级可以贷款多少
  • “老师你好”
  • 税务总局纪律作风
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设