[OpenS-CAD]屏幕坐标转换分析_屏幕坐标

蓝色为地理坐标系XOY,记为坐标系A;黄色为屏幕坐标系xoy,记为坐标系B。地图的左下角点为(X0,Y0)可很容易的平移到坐标原点。因此这里只考虑地图位于坐标原点的情况,如图二也记为坐标系A。

设地理坐标系X’OY’中任意一点为A(X1,Y1),对应于屏幕坐标系B中的点A’为a(x1,y1);

屏幕坐标以像素为单位,地理坐标以米为单位,两者之间存在固定的比例关系。屏幕高度为H。假设1像素对应1m,此时缩放比例Zoom=1。

可以建立简单的关系:

[OpenS-CAD]屏幕坐标转换分析_OpenS-CAD_02

[OpenS-CAD]屏幕坐标转换分析_屏幕高度_03

 

(1)如图三,认为两个坐标系固定,首先在屏幕坐标系将所有的地图左下角移动到屏幕中心(W/2,H/2)。平移向量(W/2,-H/2),此时A点屏幕坐标系坐标:

[OpenS-CAD]屏幕坐标转换分析_缩放比例_04

 

(2)以某屏幕一点B(x2,y2)为中心放大,首先屏幕坐标B点对应的屏幕坐标为

[OpenS-CAD]屏幕坐标转换分析_参考文献_05

 

则将地图B点平移到屏幕原点(平移向量([OpenS-CAD]屏幕坐标转换分析_参考文献_06,[OpenS-CAD]屏幕坐标转换分析_OpenS-CAD_07))后再平移到中心(平移向量(W/2,H/2))后放大。

[OpenS-CAD]屏幕坐标转换分析_OpenS-CAD_08

 

(3)接着再平移以某屏幕一点C(x3,y3)中心放大

[OpenS-CAD]屏幕坐标转换分析_缩放比例_09

[OpenS-CAD]屏幕坐标转换分析_屏幕高度_10

 

 

依次…

OpenS-CAD通过panOffset来标识设置了屏幕中心后地图坐标需要偏移的值(以屏幕坐标记)。对应(2)中的[OpenS-CAD]屏幕坐标转换分析_屏幕高度_11,当然也对应(3)中的。