高分算法求解,高手请进!!!
本人做位图格式的地图显示,遇坐标转换问题请教。
如已知位图四个角的地理坐标,求任意地理坐标在此位图上的投影坐标,即象素坐标。
注意:四个角地理坐标不构成正规的矩形,因为地球投影关系,地球可是圆的哦!
问题点数:139、回复次数:11Top
1 楼one_add_one()我要睡觉:)回复于 2001-08-06 20:00:47 得分 1
把位图四个角的地理坐标,转换成直角坐标!
再算出要求坐标的直角坐标,再根据比例关系求出象素坐标!
地理坐标转换成直角坐标,你已经会了吧?
http://www.csdn.net/expert/Topic/90/90709.shtmTop
2 楼mousubin(msb)回复于 2001-08-07 10:31:07 得分 0
位图四个角对应的直角坐标是不规则的四边型!Top
3 楼NewComeMan(新来的)回复于 2001-08-07 10:40:54 得分 0
“四个角地理坐标不构成正规的矩形”是说四个角的连线不是一个正规的矩形吧。
那请问地理坐标用的是什么坐标系?直角坐标系就不会有什么问题,总不会是极坐标系吧!Top
4 楼mousubin(msb)回复于 2001-08-07 10:42:20 得分 0
也就是说一个坐标系的矩形对应到另一个坐标系的四边形,求两个坐标系的坐标转换方法?Top
5 楼mousubin(msb)回复于 2001-08-07 10:45:44 得分 0
地理坐标系以米位单位,因地球投影关系,不是正规矩形,但不知位图的地球投影方式,所以想找个近似的算法。Top
6 楼lins(Anders*小明)回复于 2001-08-07 11:33:39 得分 0
关注!!Top
7 楼NewComeMan(新来的)回复于 2001-08-07 11:37:36 得分 100
问题的关键是地理系统的坐标系,假设使用这样的坐标系,你是不是会觉得问题很简单?
若取球面的某二垂直的球面大圆一交点为原点,沿一球面大圆的一个方向为X轴正向,另一大圆的一个方向为Y轴正向,球面上任一点坐标为(X,Y)。注意现在用的不是直角坐标,X,Y轴是圆形的。考察在此球面上,此坐标系下的一个图形(0,0)(0,1)(1,1)(1,0),直观上看是由四条球面大圆围成的,现假设一个矩形,此矩形用一直角坐标系表示,值直接取(0,0)(0,1)(1,1)(1,0)是不是你想要的投影的效果呢?把这两个坐标系间所有的点都按这个方法处理不是就实现了你说的坐标变换的功能了吗?不过这两个坐标系之间的变换严格说应该是还要乘个比例因子的。
可惜的是你的地理系统应该不是使用这样的坐标系,我想应该是使用(X,Y),X,Y分别为经纬度的吧。但是你想过没有只要知道地球的半径,把经纬度坐标系转成上述坐标系简直易如反掌,这样问题不是解决了吗?
Top
8 楼mousubin(msb)回复于 2001-08-07 18:46:27 得分 0
TO NewComeMan :
你只是解释了地球投影的方式,并不能解决我现在的问题,我现在地理系统一直采用矢量数据,按照某地球投影方式转换坐标,这个没问题,但现在又要求能够在上面显示位图格式的地图,原先的东西不能改变,只能有两种办法,一种对坐标转换加修正,一种对位图处理变换以便与现在投影方式相近,为了对任意取得的位图都能处理,就假设以知位图的四角的经纬度坐标,再处理坐标转换问题,以便尽量减小误差,但一直不知如何处理坐标的转换?或如何对象素地图进行变形拼接?Top
9 楼ruixp(锐剑)回复于 2001-08-09 12:34:08 得分 20
建议看看中科院出版的地理信息系统概论或者相关书籍
里面有关于地理坐标转换的详细方法,
你说的可能平面墨卡托转换Top
10 楼mousubin(msb)回复于 2001-10-10 00:04:00 得分 0
有没有一些简单的算法Top
11 楼Arter(阿蒂尔)回复于 2001-10-10 10:57:16 得分 18
把整条曲线作球投影,不要只记四个边界点!
Top




