首页 / OpenLayers / 使用示例
影像投影识别
同一张影像分别按 EPSG:3857 与 EPSG:4326 计算范围并挂载,视图投影切换后仍落在同一片区域。
源码与运行效果
说明
ol.source.ImageStatic 需要两样东西:图片地址,以及图片在指定投影下的
imageExtent。同一块经纬度范围在两种投影里的数值完全不同,
示例用 ol.proj.transformExtent() 换算,让影像始终覆盖同一个地理位置。
视图切换时重建 ol.View 并指定 projection;
OSM 底图会自动重投影到 EPSG:4326,因此两种视图下都能看到同一条街区的影像叠加效果。
| 操作 | 结果 |
|---|---|
| 切换到「EPSG:4326 视图」 | 中心用经纬度表示,影像仍覆盖同一片区域 |
| 切回「EPSG:3857」 | 范围数值变成米制,状态栏同步 |
| 拖动或缩放 | 底图与影像一起重投影 |
自定义投影还要先 ol.proj.addProjection() 注册,并给出投影定义,否则 ImageStatic 会拿不到坐标系。