自定义地图中的相对坐标计算

问题描述:

我目前正在为iPhone制作地图应用程序。我已经创建了一些不同大小的自定义地图,但我遇到了一个问题:自定义地图中的相对坐标计算

我想实现用户的位置自动检查的能力,但由于我没有使用MapView这很多更困难。 (见下文)

map

给出不同的坐标系,我想获得一个地理位置(绿点),并将其转化为一个自定义的地图上的像素位置。 我得到了4个角落的地理位置,但矩形是歪斜的。我计算了旋转的角度,但我只是一般困惑。

注意:地图的大小不足以让地球的球形性质进入计算。

任何帮助表示赞赏!

+0

相关岗位:http://*.com/questions/6534691/ – Gilbou 2012-04-18 07:18:43

+0

你找出这个任何解决方案? – Nina 2012-07-31 14:22:38

要将地理位置转换为点,您需要首先了解该映射。假设你正在使用墨卡托。

x = R*long 
y = R*(1+sin(lat))/cos(lat) 

其中纬度和长度都是弧度.R是地球半径。图像的比例将从0 to R*PI

如此得到它在view.frame.size您可能不得不除以比例因子。

针对点之间的差异。

x2-x1 = R* (long2-long1) 
y2-y1 = R* ( (1+sin(lat2))/cos(lat2) - (1+sin(lat1))/cos(lat1) )