m0_56694831 2021-11-16 18:05 采纳率: 88.4%
浏览 75
已结题

百度地图删除指定折线覆盖物

img

怎么删除指定的折线,现在删除不了,下面注释的地方是删除全部折线的,我想要的是删除指定的折线

  • 写回答

1条回答 默认 最新

  • CSDN专家-showbo 2021-11-16 20:48
    关注

    看代码没问题,data查询出来了吗?console.log那句打印出内容了吗?
    用下面的代码在百度官网网址下运行是没问题的,感觉题主的data没查询到内容

    img

    https://lbsyun.baidu.com/jsdemo.htm#dAddClearOverlay

    <!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;
        }
        #allmap {
            height: 100%;
            width: 100%;
        }
        ul li {
            list-style: none;
        }
        .btn-wrap {
            z-index: 999;
            position: fixed;
            bottom: 3.5rem;
            margin-left: 3rem;
            padding: 1rem 1rem;
            border-radius: .25rem;
            background-color: #fff;
            box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);
        }
        .btn {
            width: 75px;
            height: 30px;
            float: left;
            background-color: #fff;
            color: rgba(27, 142, 236, 1);
            font-size: 14px;
            border:1px solid rgba(27, 142, 236, 1);
            border-radius: 5px;
            margin: 0 5px;
            text-align: center;
            line-height: 30px;
        }
        .btn:hover {
            background-color: rgba(27, 142, 236, 0.8);
            color: #fff;
        }
    </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>
        <ul class="btn-wrap" style="z-index: 99;">
            <li class = "light btn" onclick = "addOverlay()">添加覆盖物</li>
            <li class = "night btn" onclick = "removeOverlay()">清除覆盖物</li>
        </ul>
    </body>
    </html>
        <script type="text/javascript">
        var map = new BMapGL.Map('allmap');
        var point = new BMapGL.Point(116.404, 39.915);
        map.centerAndZoom(point, 15);
        arrData=[[
            new BMapGL.Point(116.399, 39.910),
            new BMapGL.Point(116.405, 39.920),
            new BMapGL.Point(116.425, 39.900)
       ],[
            new BMapGL.Point(116.399, 39.911),
            new BMapGL.Point(116.405, 39.922),
            new BMapGL.Point(116.425, 39.903)
       ]];
          lineArr=[]
    for(var id=0;id<arrData.length;id++){
    arr=arrData[id];
        var polyline = new BMapGL.Polyline(arr, {
            strokeColor: 'blue',
            strokeWeight: 2,
            strokeOpacity: 0.5
        });
      map.addOverlay(polyline);
      lineArr.push({id,polyline})
      
    }
          console.log(lineArr)
        // 清除覆盖物
        function removeOverlay() {
          var data=lineArr.find(item=>item.id==1);//删除id为1的线
          console.log(data)
          map.removeOverlay(data.polyline)
        }
        </script>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月25日
  • 已采纳回答 11月17日
  • 创建了问题 11月16日

悬赏问题

  • ¥60 优博讯DT50高通安卓11系统刷完机自动进去fastboot模式
  • ¥15 minist数字识别
  • ¥15 在安装gym库的pygame时遇到问题,不知道如何解决
  • ¥20 uniapp中的webview 使用的是本地的vue页面,在模拟器上显示无法打开
  • ¥15 网上下载的3DMAX模型,不显示贴图怎么办
  • ¥15 关于#stm32#的问题:寻找一块开发版,作为智能化割草机的控制模块和树莓派主板相连,要求:最低可控制 3 个电机(两个驱动电机,1 个割草电机),其次可以与树莓派主板相连电机照片如下:
  • ¥15 Mac(标签-IDE|关键词-File) idea
  • ¥15 潜在扩散模型的Unet特征提取
  • ¥15 iscsi服务无法访问,如何解决?
  • ¥15 感应式传感器制作的感应式讯响器