首页 / OpenLayers / 使用示例
仿射参数与图像旋转
两个滑块对应仿射矩阵的 A、B 分量,图像按 atan2(B, A) 旋转、按向量长度缩放,同时画出变换后的覆盖范围。
源码与运行效果
说明
GeoTIFF 的地理变换是一组仿射参数:x = A·i + B·j + C,
y = D·i + E·j + F。示例只暴露 A 与 B,
并让 D = −B、E = A,于是矩阵变成「旋转 + 等比缩放」:
旋转角是 atan2(B, A),缩放是向量长度。
图标用 ol.style.Icon 的 rotation 与 scale
复现这两个量;虚线框则把单位方格的四角做同样的矩阵运算,直观看到图像覆盖到哪一片经纬度。
| 操作 | 结果 |
|---|---|
| 拖动「横向缩放 A」 | 图像放大或缩小,虚线框同步变化 |
| 拖动「错切 B」 | 图像旋转,覆盖范围跟着转 |
| B 为负值 | 旋转方向反过来,角度为负 |
完整的仿射矩阵含六个参数,还存在错切;只做旋转与缩放时可以用 atan2 与模长简化计算。