摘要
以研究和分析谷歌地图的设计与运行机制为目标,深入分析了谷歌地图卫星影像的投影模型、瓦片数据组织模型、数据请求与响应流程、瓦片数据URL地址解析等关键技术,并设计了一套可以多线程的方式下载瓦片影像数据、采用OpenGL渲染瓦片影像、并按照MBTiles规范使用SQLite数据库存储瓦片影像的卫星影像下载器。实践效果表明,下载器可实现对谷歌地图卫星影像数据的可靠下载、渲染和存储,验证了关键技术的正确性和有效性。
Aimed at studying and analyzing the design and running principles of Google Maps,the key technologies such as the projection model,the organization model of tile data,the technological process of tile data request-response and the URL resolving of tile data are analyzed deeply,and a downloader software is designed and implemented which can download image tile data by multi-thread,adopt OpenGL to render the image tile data,and save image tile files into SQLite according to MBTiles specifications.Practice proves that the downloader can download,render and save Google Maps satellite image data reliably,and correctness and validity of the key technologies are verified.
引文
[1] 马谦.智慧地图:Google Earth/Maps/KML核心开发技术揭秘[M].北京:电子工业出版社,2010.
[2] 崔金红,王旭.Google地图算法研究及实现[J].计算机科学,2007,34(11):193-195.
[3] 巫细波,胡伟平.GoogleMaps运行机制以及应用研究[J].华南师范大学学报:自然科学版,2009(2):106-110.
[4] 寇曼曼,王勤忠,谭同德.GoogleMap数字栅格地图算法及应用[J].计算机技术与发展,2012,22(4):204-206.
[5] 张业舟,黄兴.GoogleMaps瓦片组织分析和应用研究[J].测绘时空,2012,115(2):22-25.
[6] 李长春,蔡伯根,上官伟,等.基于Web墨卡托投影的地图算法研究与实现[J].计算机应用研究,2012,29(12):4793- 4796.
[7] 国家基础地理信息中心.天地图全球影像地图服务[EB/OL].http://www.tianditu.com/service/info.html?sid=1061&type=Info,2010.
[8] 百度地图开放平台.坐标系说明[EB/OL].http://lbsyun.baidu.com/index.php?title=coordinate,2018.
[9] 高德开放平台.坐标体系[EB/OL].http://lbs.amap.com/faq/top/coordinate,2018.
[10] Klokan Technologies.Maptiler:Tiles à la Google Maps:Coordinates,Tile Bounds and Projection [EB/OL].http://www.maptil-er.org/google-maps-coordinates-tile-bounds-projection/,2008.
[11] Microsoft.Bing Maps Tile System[EB/OL].https://msdn.microsoft.com/en-us/library/bb259689.aspx,2018.
[12] Joe Duffy.Windows并发编程指南[M].北京:机械工业出版社,2010.
[13] SQLite Home Page[EB/OL].http://www.sqlite.org/,2017.
[14] MapBox.MBTiles规范说明[EB/OL].https://www.mapbox.com/help/define-mbtiles/,2016.