PolygonLayer
构造函数
创建面图层
参数 类型 说明 options可选PolygonLayerOptions配置项 属性 类型 说明 dataany初始数据,同 PolygonLayer.setData 的入参 enablePickedboolean是否开启鼠标交互(命中光标 + 事件派发) fillColorStyleValue<string>填充色,css 字符串 fillOpacityStyleValue<number>填充透明度 [0,1] fillTextureAlphaOnlybooleantrue 只用纹理 alpha 做镂空、颜色取 fillColor;false 用纹理自身颜色 fillTextureSizenumber平铺时单张图在屏幕上的宽度(px),不传取图片真实宽度 fillTextureUrlstring纹理图片地址,非空即启用平铺填充 idKeystring取要素 id 的字段名 maxZoomnumber最大显示缩放等级 minZoomnumber最小显示缩放等级 mouseStyleChangeboolean命中后是否更换鼠标光标 pickThroughboolean命中后是否继续向下层派发 pickTolerancenumber命中容差(css px) referCenterPoint图层参考中心点,规避大坐标浮点抖动 renderStageRenderStage绘制阶段,取值见 RenderStage strokeColorStyleValue<string>描边色,css 字符串 strokeOpacitynumber描边透明度 [0,1] strokeWeightStyleValue<number>描边宽度(px),0 表示不描边 visibleboolean是否显示 zIndexnumber显示层级,小的先画 返回值 PolygonLayer
示例代码1
const layer = new BMap.PolygonLayer({
fillColor: 'rgba(25, 25, 250, 0.6)',
fillOpacity: 1,
strokeColor: 'rgba(250, 250, 25, 1)',
strokeWeight: 2,
referCenter: new BMap.Point(116.404, 39.915)
});
layer.setData({
type: 'FeatureCollection',
features: [
{
type: 'Feature',
geometry: {
type: 'Polygon',
coordinates: [[[116.40, 39.91], [116.42, 39.91], [116.42, 39.92], [116.40, 39.91]]]
},
properties: {}
}
]
});
map.addLayer(layer);
事件
- #addEventListener<K extends keyof PolygonLayerEventMap>(
event: K,
handler: (e: PolygonLayerEventMap[K]) => void,
): void添加事件监听(需
enablePicked为true)参数 类型 说明 eventK事件名称 handler(e: PolygonLayerEventMap[K]) => void事件处理函数 返回值 void
- #removeEventListener<K extends keyof PolygonLayerEventMap>(
event: K,
handler: (e: PolygonLayerEventMap[K]) => void,
): void移除事件监听
参数 类型 说明 eventK事件名称 handler(e: PolygonLayerEventMap[K]) => void事件处理函数 返回值 void
拾取
返回值 boolean
命中测试:容器像素坐标 → 命中的多边形,未命中返回
null参数 类型 说明 xnumber容器坐标 x(css px) ynumber容器坐标 y(css px) 返回值 PolygonLayerItem
数据
清空数据与 GPU 缓冲(含内部描边)
返回值 PolygonLayer
返回原始数据
返回值 any
设置数据,支持
FeatureCollection/Feature/Feature[]/ 裸 Geometry。 几何类型支持Polygon/MultiPolygon参数 类型 说明 geojsonany返回值 PolygonLayer
显示属性
返回值 Point
返回值 "building" | "poi"
返回值 boolean
返回值 number
参数 类型 说明 centerPoint返回值 void
参数 类型 说明 stage"building" | "poi"返回值 void
参数 类型 说明 visibleboolean返回值 void
参数 类型 说明 zIndexnumber返回值 void
样式
返回当前样式对象
返回值 PolygonLayerOptions
批量更新样式。仅更新已声明的样式键;
visible/zIndex/renderStage/referCenter/enablePicked转发到对应 setter,其余未知键忽略并告警一次参数 类型 说明 optionsPolygonLayerOptions属性 类型 说明 dataany初始数据,同 PolygonLayer.setData 的入参 enablePickedboolean是否开启鼠标交互(命中光标 + 事件派发) fillColorStyleValue<string>填充色,css 字符串 fillOpacityStyleValue<number>填充透明度 [0,1] fillTextureAlphaOnlybooleantrue 只用纹理 alpha 做镂空、颜色取 fillColor;false 用纹理自身颜色 fillTextureSizenumber平铺时单张图在屏幕上的宽度(px),不传取图片真实宽度 fillTextureUrlstring纹理图片地址,非空即启用平铺填充 idKeystring取要素 id 的字段名 maxZoomnumber最大显示缩放等级 minZoomnumber最小显示缩放等级 mouseStyleChangeboolean命中后是否更换鼠标光标 pickThroughboolean命中后是否继续向下层派发 pickTolerancenumber命中容差(css px) referCenterPoint图层参考中心点,规避大坐标浮点抖动 renderStageRenderStage绘制阶段,取值见 RenderStage strokeColorStyleValue<string>描边色,css 字符串 strokeOpacitynumber描边透明度 [0,1] strokeWeightStyleValue<number>描边宽度(px),0 表示不描边 visibleboolean是否显示 zIndexnumber显示层级,小的先画 返回值 PolygonLayer
面可视化图层,用于在地图上批量绘制 GeoJSON 面数据,适合面量较大的场景。
几何类型支持
Polygon/MultiPolygon(含洞)。可选描边(strokeWeight > 0, 内部用 PolylineLayer 实现)。支持纯色填充与整张图平铺填充,见 PolygonLayerOptions。