研究Google maps及51ditu的图片切割及存储方法

<!--[if !supportLists]-->1.         <!--[endif]-->


缩放等级与图幅数      

Google maps的缩放等级是0-17共18个等级,比例尺与缩放等级是成反比的(比例尺越大地图越详细),其第17等级只有一幅世界地图,某一等级下所含地图数的计算公式为 2<!--[endif]-->^(17-n)^2(n为缩放等级)。

<!--[if !supportLists]-->2.         <!--[endif]-->

图幅生成与编号

可以假设Google maps在每一缩放等级下的地图上都建立了一个坐标系,坐标原点为(西经180度,北纬90度),正方向分别为向东向南,经度跨度为360度,纬度跨度为180度。一般情况下,为便于理解可以这么认为,若在缩放等级n的情况下,共需生成(2<!--[endif]-->^(17-n))^2副图片,其编号形如(x,y)(0<=x<= <!--[if !vml]-->2<!--[endif]-->^(17-n)<!--[endif]-->-1,0<=y<= <!--[if !vml]-->2<!--[endif]-->^(17-n)<!--[endif]-->-1)。

但由于制图区域的范围、形状和地理位置等的不同需要选择不同的投影方式,以减少投影成平面地图后的误差值。在世界地图中常用墨卡托投影绘制世界航线图、世界交通图与世界时区图;我国出版的世界地图多采用等差分纬线多圆锥投影,选用这个投影,对于表现中国形状以及与四邻的对比关系较好,但投影的边缘地区变形较大。根据不同的需要还有许多其它的投影方式,在此不再赘述,当然国家基本比例尺地形图的投影、分幅等,是由国家测绘主管部门研究制订,不容许任意改变的,另外编制小区域大比例尺地图,无论采用什么投影,变形都是很小的。

由于Google是面向全世界的,故其不同比例尺下并且相同比例尺下不同地区不同国家其投影方式都是不同的,我猜测为使整个世界范围内的地图达到相对的精确是以牺牲海洋两极等人烟稀少地图的变形为代价的,当然这也只是针对小比例尺下的地图,随着比例尺的不断放大这种投影上的差距会越来越小。

<!--[if !supportLists]-->3.         <!--[endif]-->

结论

每个切割的小图片是256*256(像素),常识来判断每个小图片代表的实际区域长宽之比应为2:1,但由于投影不同的存在,其实它是1:1的,至于中间过程怎么处理的我也没搞明白。

关于51ditu
<!--[if !supportLists]-->1.         <!--[endif]-->缩放等级

使用的比例级别总共有0-12级共13个级别,他们和实际的比例尺的对应关系分别是:

0级 -------------------- 1:2,500

1级 -------------------- 1:5,000

2级 -------------------- 1:10,000

3级 -------------------- 1:25,000

4级 -------------------- 1:50,000

5级 -------------------- 1:100,000

6级 -------------------- 1:250,000

7级 -------------------- 1:500,000

8级 -------------------- 1:1,000,000

9级 -------------------- 1:2,500,000

10级 ------------------- 1:5,000,000

11级 ------------------- 1:10,000,000

12级 ------------------- 1:50,000,000

简单的说,0级地图最详细,12级地图最简单。

以上是其官方发布的数据。

                        

<!--[if !supportLists]-->2.         <!--[endif]-->

与Google的比较

51地图和Google maps都开放了API,有人结合两者的API把它们集成到一块,发现两者的经纬度吻合的非常好,我想这也主要是在大比例尺地图下只要两者的切割方法相同就可以做到的,故为了以后能更好的兼容并向领先者学习我们也争取达到这种比较好的吻合效果。

但分析两者的切割图片发现Google的是256*256(像素),而51ditu是128*128(像素)。如下图(1)、图(2)两幅图(两幅图均没有包含到最南端的曾母暗沙):

由于两者是采用的不同的投影方式,故地图在外形上有着比较大的差别,但应该注意的是每一小片上只是面积上的差别,通俗点来讲要有都有要没有都没有;由于两者每一幅图片是不等的,在实际中Google的每一图幅的面积应该是51ditu的4倍,但我们将两者放在同样大小的比例中发现两者吻合的比较好,由此也可推测随着比例的放大吻合程度将会更好,也就是说两者的切割方法是相同的,只不过导出图片的大小不同而已。

<!--[if !supportLists]-->3.         <!--[endif]-->

坐标系统

同样可以假设51ditu在每一缩放等级下的地图上也都建立了一个坐标系,不同的是其坐标原点为(西经11.25度,北纬0度),正方向分别为向东向北,跨度范围基本上就是覆盖中国的国土面积,即经度跨度为【67.5,135】,纬度跨度为【0,56.25】,而中国领土北起漠河以北的黑龙江江心(北纬53°30′),南到南沙群岛南端的曾母暗沙(北纬4°),跨纬度49度多;东起黑龙江与乌苏里江汇合处(东经135°05′),西到帕米尔高原(东经73°40′),跨经度60多度。

<!--[if !vml]-->


<!--[endif]-->

图(1)

<!--[endif]-->

图(2)

拟采用的方案
<!--[if !supportLists]-->1.         <!--[endif]-->方案简述      

由于Google maps并没有提供大比例尺下的中国地图,故将其作为参照系不是一个很好的选择,为便于以后的比较,我们采用与51ditu相同的坐标系统,即编号方式。

如上图(2)所示,小图片12-1-7.png,是缩放等级12之下的一副图片,1是纬度方向上的序号,7是经度方向上的序号,从以上分析我们得知,缩放等级12之下,整个地球的切图共是 <!--[if !vml]--><!--[endif]-->* <!--[if !vml]--><!--[endif]-->张,在投影影响的基础上,每个图片的跨度为11.25*11.25度,图片12-1-7.png左下角点的经纬度为(67.5,11.25),很明显(67.5+11.25)/11.25=7,11.25/11.25=1。这样我们就得到了切割图片序号的计算公式,一般化如下:

在缩放等级为n之下,切割图片的边长(设为d)d=360度/ <!--[if !vml]-->2^(17-n)<!--[endif]-->,若小图片左下角坐标为(x,y),并设经度方向上的序号为bx,纬度方向上的序号为by,可得到其表达式为bx=(x+11.25)/d;by=y/d.。

由于我们只是针对中国范围,故取经度跨度为【67.5,135】,纬度跨度为【0,56.25】,在切割时可以适当延展,延展单位以11.25为准。

<!--[if !supportLists]-->2.         <!--[endif]-->命名规则、存储方案

在最大比例尺即缩放等级为0之下,取经度跨度为【67.5,135】,纬度跨度为【0,56.25】,可以计算出共需切割的图片数量为 <!--[if !vml]-->2^17<!--[endif]-->*(67.5/360)*<!--[if !vml]-->2^17<!--[endif]-->*(56.25/360)=131072*(3/16)*131072*(5/32)=112,442,880.缩放等级n之下,所需图片数量的计算公式为2^(17-n)<!--[endif]--><!--[endif]-->*(67.5/360)* <!--[if !vml]-->2^(17-n)<!--[endif]--><!--[endif]-->*(56.25/360)=15* <!--[if !vml]-->2^(25-2n)<!--[endif]-->(0<=n<=12)

以下为各比例尺之下的对应关系

缩放级别          比例尺              图幅数           存储空间(4K/幅)

0级 -------------------- 1:2,500 --------------------503,316,480 --------------------1920G

1级 -------------------- 1:5,000 -------------------- 125,829,120 --------------------480G

2级 -------------------- 1:10,000 --------------------31,457,180 --------------------120G

3级 -------------------- 1:25,000 --------------------7,864,320 --------------------30G

4级 -------------------- 1:50,000 --------------------1,966,080 --------------------7.5G

5级 -------------------- 1:100,000 --------------------491,520 --------------------1.875G

6级 -------------------- 1:250,000 --------------------122,880……………………………

7级 -------------------- 1:500,000 --------------------30,720……………………………

8级 -------------------- 1:1,000,000 --------------------7,680……………………………

9级 -------------------- 1:2,500,000 --------------------1,920……………………………

10级 ------------------- 1:5,000,000 --------------------480……………………………

11级 ------------------- 1:10,000,000 -------------------120……………………………

12级 ------------------- 1:50,000,000 -------------------30……………………………

由以上分析可见在大比例尺下若全部生成,其数量是很巨大的,考虑到某些大比例尺地图只是在某些地区或特殊要求时是必须的,我们没有必要全部生成,只需生成规定经纬度范围内的某一缩放级别下的地图。但即使这样小缩放级别下的图幅数量仍然不小,所以我们应该分区域在不同文件夹下存放。从级别n到级别n+1,图片数量后者是前者的4倍,即放大一个级别原级别一张图片裂变为四张,这样我们可以借鉴四杈树的组织形式,即若树的深度为N,深度为N-1的节点子节点均为30个,其余节点子节点为四个(当深度为1时,根结点子节点为5*6=30个),树的深度与缩放级别的对应关系为N=13-n。

树的节点的命名即为对应文件夹的名称,根结点即以缩放级别命名,叶节点对应图片以形如“bx-by.png”的形式命名,其它节点则是形如“0-0”、“0-1”、“1-0”、“1-1”的形式命名。

这样一来生成图片的时候就有一个路径判断和生成的问题。在确定了经度跨度为【67.5,135】,纬度跨度为【0,56.25】,并且在最小比例尺(缩放等级为12)之下我们已知图片是5*6张,即经度方向为6,纬度方向为5,这两个值很重要直接影响到我们的命名,当然前提变了这个值也随着变了。我们制定规则如下:

如前树的深度为N,经度方向上的序号为bx,纬度方向上的序号为by。则当1时,经度方向上的节点值Lng=ToString(((bx-7*N)/6)%2), 纬度方向上的节点值Lat=ToString((by/5)%2),则节点名称命名为Lng+”-”+Lat。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 重庆.shp文件是一个地理信息系统(GIS)中使用的矢量数据文件,其中包含了重庆市的地理空间信息。shp是shapefile的缩写,它是一种常见的GIS数据格式。通过重庆.shp文件,我们可以获取到多种地理特征的信息,比如道路、建筑物、河流、湖泊、山脉等。 利用重庆.shp文件,我们可以制作出重庆市的地图。这个地图可以显示出重庆市的行政区划、交通路网、河流分布、地势起伏等地理特征。地图可以帮助我们更好地了解和研究重庆市的地形、地貌以及人文环境等。同时,地图还可以用于规划城市发展、评估自然资源、分析环境问题等方面。 除了制作地图,重庆.shp文件还可以用于进行空间分析。通过对地理信息进行处理和分析,我们可以得到许多有用的结果。比如,我们可以评估特定地区的土地利用情况,分析道路网络的连通性,研究土地利用与环境影响的关系等。 总之,重庆.shp文件是一个宝贵的地理数据资源,它可以帮助我们更好地认识和研究重庆市的地理特征。它不仅可以制作地图,提供准确的空间信息,还可以用于进行各种空间分析,帮助我们做出更科学的决策和规划。 ### 回答2: 重庆.shp 地图是指重庆市的地理信息数据文件,其格式为.shp,可用于地理信息系统(GIS)软件进行空间分析和地图制作。该文件包含了重庆市的各类地理要素,如行政区划边界、河流、湖泊、公路、铁路等,以矢量数据的形式进行存储。 重庆.shp 地图对于重庆市的城市规划、土地利用、交通规划等方面具有重要的参考价值。通过对重庆.shp 地图的分析,可以实现对重庆市的空间分布、地理特征、地形地貌等方面的了解和研究。同时,也可以进行相关的地理空间分析,如查找某个区域的面积、长度、周长等属性,进行距离测量、空间关系分析等。 利用重庆.shp 地图,可以制作各类的地图产品,如地理教育教学资料、旅游地图、环境保护图等。同时,也可以进行地理信息的可视化展示,用于公共或私人部门的决策支持和规划分析。 总之,重庆.shp 地图是重庆市地理信息数据的重要载体,具有丰富的地理属性和空间关系信息,对于重庆市的各类研究和应用都具有重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GADFLYGIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值