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

  • 苹果怎么取消连续包月服务(苹果怎么取消连拍)

    苹果怎么取消连续包月服务(苹果怎么取消连拍)

  • 一加7pro能用5g吗(一加7pro可以用5g吗)

    一加7pro能用5g吗(一加7pro可以用5g吗)

  • 淘宝流量怎么提上去(淘宝流量怎么提高课程等级)

    淘宝流量怎么提上去(淘宝流量怎么提高课程等级)

  • vivo手机被锁定激活(vivo手机被锁定了怎么办)

    vivo手机被锁定激活(vivo手机被锁定了怎么办)

  • 美团版本低怎么升级(美团版本太低怎么办)

    美团版本低怎么升级(美团版本太低怎么办)

  • 爱普生3153和4158区别(爱普生3153和4168该选哪个)

    爱普生3153和4158区别(爱普生3153和4168该选哪个)

  • p40悬浮球在哪(p40悬浮球哪关)

    p40悬浮球在哪(p40悬浮球哪关)

  • 谷歌在哪里下载?怎么下比较好?(谷歌官方怎么下载)

    谷歌在哪里下载?怎么下比较好?(谷歌官方怎么下载)

  • vivo安全模式在哪里开(vivo安全模式在哪里)

    vivo安全模式在哪里开(vivo安全模式在哪里)

  • 天猫多久不发货可以赔偿(天猫多久不发货缺货)

    天猫多久不发货可以赔偿(天猫多久不发货缺货)

  • 有网却显示网络不可用(有网却显示网络错误怎么回事)

    有网却显示网络不可用(有网却显示网络错误怎么回事)

  • 华为jdn2一al00是什么型号(华为jdn2-al00多少钱)

    华为jdn2一al00是什么型号(华为jdn2-al00多少钱)

  • 快手上什么叫通过私信添加(快手上什么叫通讯录)

    快手上什么叫通过私信添加(快手上什么叫通讯录)

  • 华为荣耀10能不能装内存卡(华为荣耀10能不能开空调)

    华为荣耀10能不能装内存卡(华为荣耀10能不能开空调)

  • 无网络覆盖是什么意思(无网络覆盖怎么解决?)

    无网络覆盖是什么意思(无网络覆盖怎么解决?)

  • bacal00是什么型号(bacal00参数)

    bacal00是什么型号(bacal00参数)

  • iphone5s的像素(苹果5se像素)

    iphone5s的像素(苹果5se像素)

  • 手机刷机后内置的软件怎么卸载(手机刷机后内置卡怎么办)

    手机刷机后内置的软件怎么卸载(手机刷机后内置卡怎么办)

  • 红米停在mi处理方法(红米开机停留在poweredby)

    红米停在mi处理方法(红米开机停留在poweredby)

  • 小红书怎么搜不到了(小红书怎么搜不到通讯录好友了)

    小红书怎么搜不到了(小红书怎么搜不到通讯录好友了)

  • 华为侧边指纹是哪一款(华为侧边指纹是哪一款手机)

    华为侧边指纹是哪一款(华为侧边指纹是哪一款手机)

  • ipad mini5有耳机孔吗(ipadmini5有耳机插孔吗)

    ipad mini5有耳机孔吗(ipadmini5有耳机插孔吗)

  • 华为视频铃声哪里下载(华为视频铃声哪里设置)

    华为视频铃声哪里下载(华为视频铃声哪里设置)

  • 索尼xperia1如何开启usb调试

    索尼xperia1如何开启usb调试

  • 关机后还收得到微信吗(关机后还收得到短信吗)

    关机后还收得到微信吗(关机后还收得到短信吗)

  • word合并单元格后文字怎么居中(word合并单元格怎么弄)

    word合并单元格后文字怎么居中(word合并单元格怎么弄)

  • 经营租赁增值税税率3%
  • 机票抵扣进项税怎么填申报表
  • 公司股东和自然人股东可否代持股权
  • 查账征收企业所得税年报怎么填
  • 开户行为什么是中国建设银行总行
  • 存货取得的分录
  • 土地增值税清算全流程实战案例
  • 出口退税的报关单当月可以申请退税吗?
  • 海关完税凭证如何抵扣进项税
  • 主营业务收入借方负数表示
  • 支付劳务收入怎么做账
  • 开增值税票需要对方什么资料
  • 非公司私营企业属于什么类型
  • 三证合一后还要去税务局吗
  • 提成工资可以扣发吗?
  • 蔬菜免税会计分录怎么做
  • 房产报废手续
  • 销售发票冲红的条件有哪些?
  • 月末结转增值税凭证
  • 企业所得税汇算表
  • 一键ghost优盘启动下载
  • win8.1电脑设置在哪里
  • 关于获得政府补助的公告
  • 税务自查补税后还有风险吗
  • Linux系统中矢量图ai格式怎么打开?
  • PHP:xml_parse_into_struct()的用法_XML解析器函数
  • rsrcmtr.exe - rsrcmtr是什么进程 有什么用
  • PHP:ftp_set_option()的用法_FTP函数
  • 建筑行业怎么做职业生涯规划
  • 公积金贷款所需手续
  • 租用办公设备
  • 如何确定赞助对象
  • php官方微信接口有哪些
  • php随机ua
  • 采购过程中发生材料毁损,由保险公司赔偿的部分
  • 工程项目成本费用的分类有哪些?
  • 亚美尼亚格加尔德修道院
  • 转让土地需要办什么手续
  • 企业购进的商品是什么
  • 农产品加计扣除1%怎么计算和会计分录
  • 我的年终总结怎么写
  • checksum 命令
  • 怎么用switch语句
  • php文件缓存类
  • 帝国cms真的很好用
  • 清算期间还需要报税吗
  • 基建期业务招待会议记录
  • 什么企业不用交残保金
  • 企业增值税抵扣包括哪些内容
  • 简述银行存款对应的业务
  • 购买货物收到发票怎么做账小规模
  • 去年的成本发票做错了需要补税吗
  • 水利建设基金计提会计分录
  • 附加税印花税会计分录
  • 单位租的个人房子需要采集房产税源吗
  • 增值税及附加税计算公式
  • 装修费用是当月支付吗
  • 固定资产清理账户期末有余额吗
  • 专门从事研发的公司
  • 将借款存入银行会计分录
  • 短期借款如何记账
  • 开工程款发票有什么规定?
  • 企业付的快递费怎么做账
  • 初次建账应准备哪几种会计本
  • .NET Framework SQL Server 数据提供程序连接池
  • win7系统摄像头打不开
  • 预览版与正式版
  • ubuntu lnmp环境搭建
  • win10系统可以不用杀毒软件吗
  • win10怎么分屏操作
  • jquery生成网页内容
  • g8a1
  • Time、Set、Smartdrv命令的使用方法
  • js querySelector() 使用方法
  • nodejs xhr
  • 安全的代码
  • display getSize()
  • 置顶是怎么弄的
  • 国家税务局总局政策咨询
  • 成品油消费税税目税率表2023
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设