0
点赞
收藏
分享

微信扫一扫

文件重命名自动化:批量处理让生活更简单

小月亮06 2023-11-09 阅读 14

在这里插入图片描述
在百度地图中,多边形覆盖物表示地图上的多边形区域。这些区域可以是封闭的,也可以是开放的。多边形覆盖物通常用于表示地图上的行政区划、地标或任何需要强调的区域。

多边形覆盖物拥有自己的地理坐标,并能随着地图的拖动或缩放而相应地移动。在创建多边形覆盖物时,需要提供多边形的顶点坐标,并可以通过调整顶点顺序或添加新的顶点来编辑多边形的形状。

需要注意的是,同一时刻在地图上只能有一个信息窗口打开。对于需要展示更多信息的多边形覆盖物,可以考虑使用信息窗口或其他覆盖物类型。

在百度地图API中,可以使用Polygon类来创建多边形覆盖物。

绘制多边形

   // 创建多边形
    var path = [
        new BMap.Point(113.927143, 22.766675),
        new BMap.Point(113.946116, 22.746145),
        new BMap.Point(113.960776, 22.768807),
        new BMap.Point(113.944103, 22.773073),
        new BMap.Point(113.914208, 22.770407)
    ]

    var polygon = new BMap.Polygon(path, {
        strokeColor: 'blue',
        strokeWeight: 2,
        strokeOpacity: 0.5
    });

计算多边形中心点

/*
    * path,返回多边型的点数组,Array<Point>
    */
    function getCenterPoint(path) {
        var x = 0.0;
        var y = 0.0;
        for (var i = 0; i < path.length; i++) {
            x = x + parseFloat(path[i].lng);
            y = y + parseFloat(path[i].lat);
        }
        x = x / path.length;
        y = y / path.length;
        //console.log(x);
        //console.log(y);
        //console.log(x+','+y);

        var Point = new BMap.Point(x, y);

        // 创建点标记
        var marker2 = new BMap.Marker(Point);
        map.addOverlay(marker2);
    }

@漏刻有时

举报

相关推荐

0 条评论