百度地图显示路径路书polyline

路书 百度地图参考文档
https://dafrok.github.io/vue-baidu-map/#/zh/bmaplib/lushu
(误人子弟)

<template>
<baidu-map class="map" :center="{lng: 116.404, lat: 39.915}" :zoom="11">
  <bm-driving start="天安门" end="百度大厦" @searchcomplete="handleSearchComplete" :panel="false" :autoViewport="true"></bm-driving>
//显示小车组件 
 <bml-lushu
    @stop="reset"
    :path="path"
    :icon="icon"
    :play="play"
    :rotation="true">
  </bml-lushu>

//显示小车走的路径
 <bm-polyline v-if="path && path.length > 0" :path="path" stroke-color="#0000FF" :editing="false"></bm-polyline>

</baidu-map>
</template>

<script>
import {BmlLushu} from 'vue-baidu-map'
export default {
  components: {
    BmlLushu
  },
  data () {
    return {
      play: true,
      path: [],
      icon: {
        url: 'http://api.map.baidu.com/library/LuShu/1.2/examples/car.png',
        size: {width: 52, height: 26},
        opts: {anchor: {width: 27, height:13}}
      }
    }
  },
  methods: {
    reset () {
      this.play = false
    },
    handleSearchComplete (res) {
      this.path = res.getPlan(0).getRoute(0).getPath()
    }
  }
}
</script>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过以下步骤实现百度地图API多个点渲染路径: 1. 获取多个点的经纬度坐标,可以通过百度地图API的搜索服务、定位服务或者手动输入获取。 2. 根据获取的经纬度坐标,在地图上标记多个点,可以使用百度地图API的覆盖物(marker)功能实现。 3. 使用百度地图API的路线规划服务,根据多个点的经纬度坐标计算出路径,生成路线规划结果。 4. 将路线规划结果显示在地图上,可以使用百度地图API的折线(polyline)功能实现。 以下是示例代码: ```javascript // 多个点的经纬度坐标 var points = [ new BMap.Point(116.404, 39.915), new BMap.Point(116.407, 39.920), new BMap.Point(116.410, 39.912) ]; // 在地图上标记多个点 for (var i = 0; i < points.length; i++) { var marker = new BMap.Marker(points[i]); map.addOverlay(marker); } // 创建路线规划服务实例 var driving = new BMap.DrivingRoute(map, { renderOptions: { map: map, autoViewport: true } }); // 根据多个点的经纬度坐标计算路径 driving.search(points[0], points[points.length - 1], { waypoints: points.slice(1, -1) }); // 显示路线规划结果 driving.setSearchCompleteCallback(function () { var path = driving.getResults().getPlan(0).getRoute(0).getPath(); var polyline = new BMap.Polyline(path, { strokeColor: "#FF0000", strokeWeight: 3, strokeOpacity: 0.5 }); map.addOverlay(polyline); }); ``` 其中,`points`数组中的每个元素都是一个`BMap.Point`对象,表示一个点的经纬度坐标。`driving`是一个`BMap.DrivingRoute`对象,用于计算路线规划结果。`driving.search`方法用于计算路径,其中第一个参数为起点坐标,第二个参数为终点坐标,第三个参数`waypoints`为途经点坐标数组。`driving.setSearchCompleteCallback`方法用于设置计算完成后的回调函数,该回调函数中可以获取到路线规划结果`path`,并用`BMap.Polyline`对象将其显示在地图上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值