SVG 覆盖物 map-svgoverlay
2026年7月20日大约 3 分钟
SVG 覆盖物 map-svgoverlay
经纬度贴 SVG 覆盖物。
放在
map-2d的pieces里;enabled写在节点顶层。数据来源data-input:bind-fields(绑工程连接)或source(引用数据源)。
在线演示
一段内联 SVG(面板 + 圆点 + 文字)按地理角点贴到高德底图上:
svg-content写完整 SVG 标记(组件先栅格化为 PNG 再贴图),svg-scale控制栅格化清晰度,配不透明度。可拖拽缩放对比贴合关系。
属性
| 属性 | 名称 | 类型 | 默认 | 说明 |
|---|---|---|---|---|
enable-zoom | 限制缩放区间 | boolean | false | |
min-zoom | 最小级别 | number(min=0,max=24,step=0.1) | 0 | |
max-zoom | 最大级别 | number(min=0,max=24,step=0.1) | 24 | |
svg-content | SVG 内容 | string(textarea) | <svg xmlns="http://www.w3.org/2000/svg" width="120" heigh… | |
svg-coordinates | 地理角点 | map-image-bounds | -20,10;20,-10 | |
svg-scale | 渲染清晰度 | number(min=0.5,max=4,step=0.5) | 2 | |
svg-opacity | 不透明度 | slider(min=0,max=100,step=1,unit=%) | 100 | |
svg-saturation | 饱和度 | slider(min=-100,max=100,step=1,unit=%) | 0 | |
svg-hue | 色相旋转 | slider(min=0,max=360,step=1,unit=°) | 0 | |
svg-brightness | 亮度 | slider(min=-100,max=100,step=1,unit=%) | 0 | |
svg-contrast | 对比度 | slider(min=-100,max=100,step=1,unit=%) | 0 | |
svg-resampling | 采样方式 | select | linear | 可选:linear / nearest |
row-row-filter-mode-id | 选择数据规则 | select(condition) | — |
事件
| 触发器 | 名称 | 配在哪 | payload |
|---|---|---|---|
marker-click | 点击点要素 | map-2d 组件的 options.interactions(运行态按命中图层分流) | 命中要素属性行,公式 {:name} / {:value} 取值 |
region-click | 点击面要素 | 同上 | 同上 |
map-select / map-unselect | 选中 / 取消 | 同上 | 选中项数据 |
事件写在地图组件上而非图层上。图层还支持
feature-panel-uid(点击要素弹锚定窗口)与tooltip-enable(悬停浮层),见属性表。动作端可用mapLayerVisible/mapSetLayerStyle/mapRefreshData等 17 个地图动作,见 2D 地图 · 事件。
示例
{
"type": "map-svgoverlay",
"uid": "ly_x",
"enabled": true,
"options": {
"svg-content": "<svg …></svg>",
"svg-coordinates": "116.30,39.99;116.50,39.99;116.50,39.85;116.30,39.85"
}
}