GroundPoint

贴地点覆盖物,继承 GroundOverlay。

构造函数

  • 创建贴地点覆盖物,该覆盖物的大小为墨卡托坐标系下的实际大小,屏幕空间的大小会随着地图的缩放级别变化而变化。

    参数类型说明
    pointPoint地理坐标点
    opts 可选GroundPointOptions可选参数
    属性类型说明
    anchorSize锚点,以图标左上角为原点
    levelnumber尺寸参考的缩放级别
    offsetSize偏移量
    rotationnumber旋转角度,单位度
    scalenumber缩放比例
    sizeSize坐标点尺寸,单位像素
    urlstring图标地址

    返回值 GroundPoint

    示例代码1

    const groundPoint = new BMap.GroundPoint(
    new BMap.Point(116.404, 39.915),
    { url: 'https://jsapi-demo.bj.bcebos.com/images/markers/car.png', size: new BMap.Size(30, 60) }
    );
    map.addOverlay(groundPoint);

方法

  • 析构方法,当确定覆盖物被移除后不再使用时,可显式调用此方法以降低内存使用

    返回值 void

  • 抽象生命周期方法,当地图状态发生变化时调用,对覆盖物进行绘制。

    仅在自定义覆盖物时需要实现此方法。内置覆盖物已在内部实现,用户无需调用也无需重写。

    返回值 void

  • 获取图层内容来源,图片或视频类型的结果为资源地址,Canvas 类型的结果为 Canvas 元素

    返回值 string | HTMLCanvasElement

  • 隐藏覆盖物。对于自定义覆盖物,此方法会自动将initialize方法返回的HTML元素样式的display属性设置为none

    返回值 void

  • 抽象生命周期方法,用于初始化覆盖物,当调用map.addOverlay时,API内部将调用此方法。

    仅在自定义覆盖物时需要实现此方法,并返回覆盖物对应的HTML元素。 内置覆盖物(MarkerPolylinePolygon 等)已在内部实现,用户无需调用也无需重写。

    参数类型说明
    mapMap

    返回值 HTMLElement

    示例代码1

    class MyOverlay extends BMap.Overlay {
    initialize(map: BMap.Map) {
    const div = document.createElement('div');
    div.textContent = '自定义覆盖物';
    map.getPanes().markerPane.appendChild(div);
    return div;
    }
    draw() {}
    }
  • 设置锚点位置

    参数类型说明
    anchorSize锚点偏移量
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setAnchor(new BMap.Size(16, 16), true);
    
  • 设置图层显示的矩形区域

    参数类型说明
    boundsBounds矩形区域

    返回值 void

    示例代码2

    groundOverlay.setBounds(new BMap.Bounds(
    new BMap.Point(116.380, 39.900),
    new BMap.Point(116.430, 39.930)
    ));
  • 设置图层显示的最大缩放级别

    参数类型说明
    levelnumber最大级别

    返回值 void

    示例代码3

    groundOverlay.setDisplayOnMaxLevel(18);
    
  • 设置图层显示的最小缩放级别

    参数类型说明
    levelnumber最小级别

    返回值 void

    示例代码4

    groundOverlay.setDisplayOnMinLevel(10);
    
  • 设置图层图片地址

    参数类型说明
    urlstring图片URL
    bounds 可选Bounds可选,同时更新叠加的地理范围

    返回值 void

    示例代码5

    groundOverlay.setImage('https://jsapi-demo.bj.bcebos.com/images/markers/marker_demo_9.png');
    
  • 设置图层的图片地址

    参数类型说明
    urlstring图片地址
    bounds 可选Bounds可选,同时更新叠加的地理范围

    返回值 void

    自 4.0 起

    请使用 setImage

  • 设置偏移量

    参数类型说明
    offsetSize偏移量
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setOffset(new BMap.Size(5, -5), true);
    
  • 设置图层透明度

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

    返回值 void

    示例代码6

    groundOverlay.setOpacity(0.5);
    
  • 设置覆盖物的地理坐标点

    参数类型说明
    pointPoint地理坐标
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setPoint(new BMap.Point(116.410, 39.920), true);
    
  • 设置旋转角度

    参数类型说明
    anglenumber旋转角度,单位度
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setRotation(90, true);
    
  • 设置缩放比例

    参数类型说明
    scalenumber缩放比例
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setScale(1.5, true);
    
  • 设置图标尺寸

    参数类型说明
    sizeSize尺寸,单位像素
    update 可选boolean是否立即更新渲染

    返回值 this

    示例代码1

    groundPoint.setSize(new BMap.Size(48, 48), true);
    
  • 设置覆盖物的 zIndex,如需始终置于普通覆盖物之上,使用 GroundOverlayOptions#top

    参数类型说明
    zIndexnumber层叠顺序值

    返回值 void

  • 显示覆盖物。对于自定义覆盖物,此方法会自动将initialize方法返回的HTML元素样式的display属性设置为空

    返回值 void