首页 / OpenLayers / 使用示例
拖放数据的瓦片预览
拖入数据后不仅上图,还按 z9 计算它覆盖的瓦片矩形,把瓦片编号标在图上,模拟矢量瓦片预览。
源码与运行效果
说明
矢量瓦片预览的核心是「数据范围落在哪些瓦片里」。示例用
ol.tilegrid.createXYZ() 建标准网格,把数据范围的左上角与右下角分别
换算成瓦片行列号,再逐块用 getTileCoordExtent() 取范围画矩形。
每个矩形要素带 label 属性(z/x/y),样式函数把它写成文字,
于是能直接看到数据跨越了几块瓦片;瓦片数超过 40 时停止绘制,避免画布过重。
| 操作 | 结果 |
|---|---|
| 点击「载入内置数据」 | 多边形上图,并在 z9 网格中框出覆盖瓦片 |
| 拖入自己的 GeoJSON | 数据替换显示,瓦片编号重新计算 |
| 缩放地图 | 瓦片矩形按地图坐标固定,不随缩放变形 |
真实 MVT 预览还要在客户端解析 pbf,并处理投影与 extent 比例,这里只演示范围计算与标注。