关于都市圈和E都市的投影问题
作者: 赵博 • 2007 年 12 月 26 日 • 技术主义 • 9 条评论
http://www.geoinformatics.cn/2007/12/%E5%85%B3%E4%BA%8E%E9%83%BD%E5%B8%82%E5%9C%88%E5%92%8Ce%E9%83%BD%E5%B8%82%E7%9A%84%E6%8A%95%E5%BD%B1%E9%97%AE%E9%A2%98/
最近一直对都市圈和E都市的2.5D WebGIS做了一些初步研究。我觉得但从地图实现的方面来讲,这种2.5D的地图无非是用3Dmax或者sketchup建好模型,给一个视角,然后rendered一下,生成栅格图片在服务器端显示。但是这样的栅格图片是没有地理坐标系或者是不参考地图投影的。那么也就是说,如果要给这样的地图进行地理的计算,比如计算距离、面积等就会牵着到很多问题,甚至很难进行。所以,这种2.5D的WebGIS从理论上讲还是有投影存在的。
那么都市圈和E都市用的是什么投影呢?
我起初思考,可能用的是方位投影,我们两极都是用的方位投影,而且一些面积比较小的国家也是用的方位投影。而且,对于2.5 D WebGIS针对的研究区域也是一个主城区而已,所以,极有可能会是方位投影。但是后来我用ArcGIS定义了 Azimuth Projection,发现在边缘范围畸变是很大的,因为方位投影的视点为一个点,这样她的投影范围是一个圆形,所以她在不同区域的畸变是不相同的。
后来我仔细琢磨,像都市圈或者E都市的投影应该使用来自无穷远的平行光源照射,然后给一个照射的角度,所以从理论上可知应该使用正射投影(orthographic projection)。然后经过实验也是可以行的。要注意的是,在设置斜射投影时需要设置两个参数,分别为经度中心和纬度中心,需要根据实际情况设置。同时,我有产生了新的想法,完全可以给都市圈以不同的投影,然后on-the-fly进行变化,也就可以让我们在观察时不仅仅用一个视角,而是有不同的视角。这是一个很关键的问题,也是2.5->3的一个便捷转换的过程。下面给出我自己设置的都市圈的投影:
PROJCS["orth_dsq",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",
SPHEROID["WGS_1984",6378137.0,298.257223563]],
PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],
PROJECTION["Orthographic"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],
PARAMETER["Longitude_Of_Center",80.0],PARAMETER["Latitude_Of_Center",-8.0],UNIT["Meter",1.0]]
PS:如果要实现远小近大的效果,可以考虑透视投影(perpective projection),它会给光源加一个高度。
相关文章: