全部服务产品
开发者频道
定价
登录

文档全面上新

更科技的视觉体验,更高效的页面结构,快前往体验吧!

体验新版
MVTLayer图层
更新时间:2023年01月12日
简介
JSAPI GL提供MVTLayer类支持加载MVT矢量瓦片数据,方便用户进行海量数据的个性化展示。MVTLayer继承XYZLayer网格瓦片设置相关参数,内部实例化TileLayer,用于添加MVT标准图层,通过options设置图层瓦片请求地址、显示等级、显示范围、显示图层、图层样式等。
类参考
图层示例
1确认MVT瓦片请求地址
商业慧图平台数据源为例, 瓦片请求地址需要明确创建数据用户ak、项目ID以及项目状态(未发布是0,已发布是1)
const ak = 【用户ak】;
const mapId = 【项目ID】;
const mode = 1;
var tileUrl = `https://api.map.baidu.com/region_lite/v1/region/huitu/encryption/mvt?ak=${ak}&mapId=${mapId}&x=[x]&y=[y]&z=[z]&tileSize=256&mode=${mode}`;
2创建MVTLayer图层
// 定义MVTayer图层
var layer = new BMapGL.MVTLayer({
    encrypt: true,
    idProperty: 'region_id',
    spanLevel: -1,
    noCollision: false, // 图层文字碰撞
    style: {
        point: {
            type: 'point',
            maxZoom: 12,
            painter: {
                name: ['get', 'name'],
                fontSize: 32,
                symbolPath: 9,
                symbolFillColor: ['case', ['boolean', ['feature-state', 'hover'], false], 'orange', 'red']
            }
        },
        fill: {
            type: 'polygon',
            painter: {
                fillColor: ['case', ['boolean', ['feature-state', 'hover'], false], 'blue', '#f5f975'],
                fillOpacity: 0.3,
                strokeWeight: 2,
                strokeOpacity: 0.6,
                strokeColor: 'rgb(141,33,33)'
            }
        }
    },
    minZoom: 9,
    maxZoom: 17,
    tileUrlTemplate: tileUrl
});
3定义事件
layer.addEventListener('onmousemove', function (e) {
layer.updateState(e.value, {
    hover: true
  }, false);
});
layer.addEventListener('onmouseout', function (e) {
    layer.clearState();
});
4添加图层到地图实例
map.addTileLayer(layer);
  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消