使用百度地图API绘制多点折线轨迹
需积分: 5 39 浏览量
更新于2024-08-05
收藏 2KB TXT 举报
"使用百度地图API在网页上绘制折线轨迹"
本文将详细介绍如何利用百度地图API在网页上实现从数组中获取经纬度坐标,并在地图上标注点以及绘制折线轨迹的过程。首先,我们需要创建一个HTML文件作为基础,设置相应的样式和引入百度地图API的JavaScript库。
```html
<!DOCTYPE html>
<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 {
height: 1000px;
width: 100%;
}
#r-result {
width: 100%;
}
</style>
<script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=˽Կ"></script>
<title></title>
</head>
<body>
<div id="allmap"></div>
</body>
</html>
```
在这个HTML文件中,我们创建了一个ID为`allmap`的div元素,用于展示地图,同时通过`<script>`标签引入了百度地图API的WebGL版本。`ak=˽Կ`参数是百度地图的API密钥,需要替换为你自己申请的密钥。
接下来,我们需要在`<script>`标签内编写JavaScript代码来实现地图的初始化、标注点和绘制折线的功能:
```javascript
<script type="text/javascript">
// 初始化地图
var map = new BMapGL.Map("allmap");
var point = new BMapGL.Point(113.634224, 34.75159);
map.centerAndZoom(point, 8); // 设置中心点和缩放级别
map.enableScrollWheelZoom(true); // 开启鼠标滚轮缩放
// 定义经纬度坐标数组
var markerList = [
{lng: 113.853841, lat: 34.035734},
{lng: 113.634224, lat: 34.75159},
{lng: 113.205337, lat: 33.76726},
{lng: 112.529236, lat: 32.968373}
];
// 将坐标转换为BMapGL.Point对象并存储到数组
var polylinePointsArray = [];
for (var i = 0; i < markerList.length; i++) {
polylinePointsArray.push(new BMapGL.Point(markerList[i].lng, markerList[i].lat));
}
// 创建折线并添加到地图
var polyline = new BMapGL.Polyline(polylinePointsArray, {strokeColor: "blue", strokeWeight: 3, strokeOpacity: 0.6});
map.addOverlay(polyline); // 添加折线覆盖物到地图
</script>
```
这段JavaScript代码首先创建了一个BMapGL.Map对象`map`,然后设置了地图的中心点和初始缩放级别。接着,定义了一个包含多个经纬度坐标的数组`markerList`,并通过循环将这些坐标转换为BMapGL.Point对象并存储到`polylinePointsArray`数组中。
最后,我们使用`BMapGL.Polyline`创建了一个折线对象,设置了折线的颜色、宽度和透明度,并通过`map.addOverlay()`方法将其添加到地图上显示。这样,我们就成功地在百度地图上绘制了一条由多个点构成的折线轨迹。
总结:通过以上步骤,我们可以了解到在网页上使用百度地图API绘制折线轨迹的基本流程,包括地图的初始化、点的标注以及折线的绘制。这在地理信息系统、物流追踪、路线规划等场景中非常实用。记得替换API密钥并根据实际需求调整坐标点和样式参数。
2012-08-16 上传
2017-11-08 上传
2018-07-09 上传
2023-05-12 上传
598 浏览量
651 浏览量
2018-06-01 上传
158 浏览量
2021-04-29 上传
justdudu617
- 粉丝: 0
- 资源: 1
最新资源
- mean-tutorial:MEAN Stack教程Markdown
- WPF的ValidationAttribute数据验证
- VC++ 显示隐藏窗体中的指定控件
- features_importance:带有表格数据的关于ML模型的可解释性的笔记本
- 电子功用-在电视画中画上显示监控视频的系统及其方法
- esbuild-node-modules
- VC++在MFC程序窗口中实现全屏显示切换
- simple_adonis_api:只是一个简单的阿多尼斯API
- hashcode2021:源HashCode 2021
- AndroidSimpleTwitterAppV2:V2版本
- OCR:腾讯云OCR文字识别
- Flunt.Extensions.AspNet
- react-weather-app:使用React,Material-UI和Redux的示例应用程序根据位置显示当前天气
- BCMenu 自绘菜单的另一个VC++版本源代码
- spring-framework-projects:我自己使用java框架、javascript框架和数据库技术开发的项目
- Python库 | zhulong3-5.0.8.zip