此类表示一个多边形覆盖物。

构造函数

  • 创建多边形覆盖物对象

    参数类型说明
    pointsPoint多边形的坐标点数组
    opts 可选PolygonOptions可选参数
    属性类型说明
    enableClickingboolean是否响应点击事件
    enableEditingboolean是否启用编辑功能
    enableMassClearboolean是否在调用 map.clearOverlays() 时清除此覆盖物
    fillColorstring填充颜色,格式为 '#xxxxxx',传入空字符串时无填充效果
    fillOpacitynumber填充透明度,取值范围0 - 1
    strokeColorstring边线颜色,格式为 '#xxxxxx'
    strokeOpacitynumber边线透明度,取值范围0 - 1
    strokeStylestring边线样式,支持 'solid' 实线或 'dashed' 虚线
    strokeWeightnumber边线宽度,以像素为单位

    返回值 Polygon

    示例代码1

    const polygon = new BMap.Polygon([
    new BMap.Point(116.387112, 39.920977),
    new BMap.Point(116.385243, 39.913063),
    new BMap.Point(116.394226, 39.917988),
    ]);
    map.addOverlay(polygon);

    示例代码2:自定义样式

    const polygon = new BMap.Polygon(
    [
    new BMap.Point(116.387112, 39.920977),
    new BMap.Point(116.385243, 39.913063),
    new BMap.Point(116.394226, 39.917988),
    ],
    { strokeColor: '#0055ff', fillColor: '#0055ff', fillOpacity: 0.3 }
    );
    map.addOverlay(polygon);

方法

  • 添加事件监听函数

    参数类型说明
    eventstring事件名称
    handlerFunction事件处理函数

    返回值 void

    示例代码1

    polygon.addEventListener('click', (e) => {
    console.log('polygon clicked', e);
    });
  • 关闭编辑功能

    返回值 void

  • 禁止覆盖物在 map.clearOverlays() 方法中被清除

    返回值 void

  • 开启编辑功能

    返回值 void

  • 允许覆盖物在 map.clearOverlays() 方法中被清除

    返回值 void

  • 返回覆盖物的地理区域范围

    返回值 Bounds

  • 返回多边形的填充颜色

    返回值 string

  • 返回多边形填充透明度

    返回值 number

  • 返回覆盖物所在的地图实例

    返回值 Map

  • 返回多边形的坐标点数组

    返回值 Point[]

  • 返回多边形的边线颜色

    返回值 string

  • 返回多边形边线透明度

    返回值 number

  • 返回多边形边线样式

    返回值 string

  • 返回多边形边线宽度

    返回值 number

  • 移除事件监听函数

    参数类型说明
    eventstring事件名称
    handlerFunction事件处理函数

    返回值 void

    示例代码1

    const handler = (e: any) => { console.log(e); };
    polygon.addEventListener('click', handler);
    polygon.removeEventListener('click', handler);
  • 设置多边形的填充颜色,传入空字符串时无填充效果

    参数类型说明
    colorstring颜色值,合法的CSS颜色值

    返回值 void

    示例代码1

    polygon.setFillColor('#0055ff');
    
  • 设置多边形填充透明度

    参数类型说明
    opacitynumber透明度,取值范围0 - 1

    返回值 void

    示例代码1

    polygon.setFillOpacity(0.3);
    
  • 设置多边形的坐标点数组

    参数类型说明
    pathPoint坐标点数组

    返回值 void

    示例代码1

    polygon.setPath([
    new BMap.Point(116.387112, 39.920977),
    new BMap.Point(116.385243, 39.913063),
    new BMap.Point(116.394226, 39.917988),
    new BMap.Point(116.401772, 39.921364),
    ]);
  • 修改指定索引处的坐标点,索引从0开始

    参数类型说明
    indexnumber坐标点索引
    pointPoint新的坐标点

    返回值 void

    示例代码1

    polygon.setPositionAt(1, new BMap.Point(116.390, 39.915));
    
  • 设置多边形的边线颜色

    参数类型说明
    colorstring颜色值,合法的CSS颜色值

    返回值 void

    示例代码1

    polygon.setStrokeColor('#ff0000');
    
  • 设置多边形边线透明度

    参数类型说明
    opacitynumber透明度,取值范围0 - 1

    返回值 void

    示例代码1

    polygon.setStrokeOpacity(0.6);
    
  • 设置多边形边线样式

    参数类型说明
    stylestring线样式,'solid' 实线或 'dashed' 虚线

    返回值 void

    示例代码1

    polygon.setStrokeStyle('dashed');
    
  • 设置多边形边线宽度

    参数类型说明
    weightnumber线宽,单位像素,须为大于等于1的整数

    返回值 void

    示例代码1

    polygon.setStrokeWeight(3);