搜档网
当前位置:搜档网 › 使用BIGEMAP制作OSGEARTH瓦片地图

使用BIGEMAP制作OSGEARTH瓦片地图

使用BIGEMAP制作OSGEARTH瓦片地图
使用BIGEMAP制作OSGEARTH瓦片地图

使用BIGEMAP制作OSGEARTH瓦片地图

愈挫愈勇(QQ473943748)

摘要: osgEarth是基于OSG的与GoogleEarth类似的跨平台地形SDK,笔者结合自己的经验,利用BIGEMAP来进行地图影像资源的下载,给大家介绍一种适用于osgEarth的TMS 地图瓦片数据集的制作方法。

关键词: BIGEMAP; OSGEARTH;瓦片

一、引言

OpenSceneGraph是一个开源的三维引擎,被广泛的应用在视化仿真、游戏、虚拟现实、科学计算、三维重建、地理信息、太空探索、石油矿产等领域。OSG 采用标准C++和OpenGL编写而成,可运行在所有的Windows平台、OSX、

GNU/Linux、IRIX、Solaris、HP-Ux、AIX、Android和FreeBSD 操作系统。OSG 在各个行业均有着丰富的扩展,能够与使用OpenGL书写的引擎无缝的结合,使用国际上最先进的图形渲染技术,让每个用户都能站在巨人的肩上。而osgEarth 是正是基于OSG的与GoogleEarth类似的跨平台地形SDK。osgEarth的开源特性使得相当多的人对其进行了研究,而对于广大工程人员来说,一个漂亮的地图是其开展应用的第一步,为此,笔者结合自己的经验,给大家介绍一种适用于osgEarth的地图瓦片数据集的制作过程。

二、地图影像资源的收集

本文笔者利用BIGEMAP(免费版)软件来进行地图影像资源的下载,以谷歌中国地图(图1)为例,选中菜单项中的“矩形框”,在地图上任意选取一个矩形区域(图2),后选择界面右上方的“编辑”,修改矩形框的范围为:

-180.0-180.0 ,-90.0-90.0(图3),这样就框中了全球区域(图4)。双击矩形区域内部,就弹出地图下载对话框(图5),将“存储选项”选择“瓦片:TMS ”,“PNG”图片格式,瓦片级别根据需要选择,由于硬盘空间原因,本文只选到了8级,单击“确定”后就开始了瓦片的下载,详细情况可以在“下载列表”里查看。下载结束后生成的瓦片在“TMS”文件夹下,里面有0-8级PNG格式的瓦片(图6-7)。至此,基于BIGEMAP谷歌中国的地图瓦片就收集完毕了。

图1、 BIGEMAP(谷歌中国免费版)界面

图2、任意选择一个区域示例

图3、更改矩形框的范围

图4、选中全球范围

图5、下载设置对话框

图6、0-8级瓦片文件夹

图7、PNG格式瓦片

三、 TMS数据集的配置及其在OSGESRTH上的演示

osgEarth可以使用TMS服务来配置瓦片数据集,这需要一个配置文件(本例中为tilemapresource.xml文件),具体配置内容如下:

world2.tif

EPSG:900913

extension="png"/>

配置完成后,最终的“TMS”文件夹如图8所示。

图8 TMS文件夹最终配置

至此TMS数据集配置完成,下面来实现在osgEarth中的显示。这里使用earth文件来显示瓦片影像数据,本文为:

C:\osg\osgearth\osgearth\tests\tmsdriver4.earth, tmsdriver4.earth文件内容如下:

C:/Users/cf/Desktop/12/world3/TMS/tilemapresource.xml

在CMD中输入命令(图9):

“osgearth_viewerd C:\osg\osgearth\osgearth\tests\tmsdriver4.earth”,

谷歌风格的地球影像就出来了(如图10-11)。

图9 CMD 命令窗口

图10 全屏模式下OSGEARTH显示的地球

图11全屏模式下OSGEARTH显示的地球,放大后的效果

四、结论

本文充分利用了BIGEMAP软件的便利,制作了TMS地球影像数据集,并对数据集进行了配置,最通过读取earth文件的方式,在osgEarth中对数据集进行了演

示,为广大OSG爱好者提供了制作地球瓦片的有效方法。

地图切片原理

地图切片原理 何为瓦片?瓦片即网格中有多个类似瓦片的图片集。瓦片数据是将矢量或影像数据进行预处理,采用高效的缓存机制(如金字塔)形成的缓存图片集,采用“级、行、列”方式进行组织,可在网页中快速加载。因此,瓦片地图加载是根据客户端请求的地图范围和级别,通过计算行列号获取对应级别下网格的瓦片(即服务器预裁剪的图片),由这些瓦片集在客户端形成一张地图,如图2.21所示。 矢量地图和瓦片地图各具特点和优势,两者可以结合应用。矢量地图实时生成,可以对地图数据进行在线编辑、查询分析,具有空间关系,能够支持网络分析、空间分析等应用。瓦片地图由于是预裁剪的缓存图片集,网络加载速度较快、效果好,常作为地图底图。 地图切片:采用预生成的方法存放在服务器端,然后根据用户提交的不同请求,把相应的地图瓦片发送给客户端的过程,它是一种多分辨率层次模型,从瓦片金字塔底层到顶层,分辨率越来越低,但表示的地理范围不变。 地图缓存:又称地图瓦片,是一个包含了不同比例尺下整个地图范围的地图切片的目录,即一个缓存的地图服务就是能够利用静态图片来快速地提供地图的服务。 这里对地图切片中的几个重要的概念做一个介绍。 原理 几个概念: 在地图切片中,有三个比较重要的概念:1、切片原点;2、切片分辨率(比例尺);3、初始切片范围。下面就这三个概念做一个简单的介绍。 1、切片原点 切片原点一般有两种:1、左上角;2、左下角。大部分切片的算法是采用左上角作为切片原点的,例如天地图、Arcgis Server等等。切片原点定义了我的第一个 256*256的切片的位置。 2、切片分辨率(比例尺) 切片分辨率和比例尺是一一对应的。比例尺指的是我的图上一个单位代表实际多少距离,而分辨率代表屏幕上一个像素代表实际多少距离,因此,当定了一个之后,对应的另一个也确定了。 切片分辨率(比例尺)影响的是在该分辨率(比例尺)下,我的一个256*256的图片的实际坐标是多少。 3、初始化切片范围 初始化切片范围是指我是按照多大的图幅进行切片的,影像的是我在这个分辨率下总共能切多少个256*256的切片。

基于瓦片的web地图

做的一个网站中需要一个电子地图,姑且叫他web-gis吧!基本的实现机制是网页中的图片动态浏览,mapabc(也就是图盟:https://www.sodocs.net/doc/6c11468402.html,/)的网页地图应该也是基于这一机制实现的,google地图搜索就是mapabc提供的,当然我做的这个在功能方面和人家的还是差的远。去年,还差点决定到这家公司面试去那。 现在这个网站中的电子地图开始时也不是我自己写的,代码来自于一个俄罗斯人,使用了mootools工具包,我只是在他代码的基础上进行了功能和界面的修改和增补。地图图片是由很多小的图片组成的;也就是把一张大的地图图片,根据清晰度剪切成许多小的图片,再实时加载呈现出来。当地图上有拖拽、双击等操作时,也需要重新加载地图。你保存一下google 地图,就可以看到这些剪切出来的小图片了。小图片的文件名称都是按照规则命名的,这样也是js加载图片的需要。在地图上添加标识,是在地图上添加一个div,之后在它上面添加一个标识图片;当然这个div也要响应地图的所有事件。将鼠标放在标识上方后出现提示框,点击提示框中的文字可以进行一些相关操作!这个提示框的实现也有很多例子!我不知道地图搜索部分是如何实现的,估计应该是通过要搜索的字符检索匹配的地点和地点坐标。通过页面上的菜单可以在的图上显示这些地方,清晰度可以控制的。现在还有一些细节方面的问题需要修改!最后一张是操作成功后用ExtJs做的信息提示框!

网上有一个比较成熟的开源的地图浏览器,网址是:https://www.sodocs.net/doc/6c11468402.html,/projects/gsiv/,

初始版本的名字叫Giant Scalable Image Viewer (GSIV),现在官方网站上又出现了一个版本Giant-Ass Image V iewer(GSV)。现在这个开源项目只是实现了图片的浏览,并且在IE下还有些问题。有兴趣的朋友可以研究一下!

WebGIS中瓦片地图关键技术研究

2012年第2期·北京测绘· [收稿日期] 2 011-10-27[作者简介] 苏旭明( 1966—),女,汉族,湖南桃江人,高级工程师,硕士,主要从事地图制图和地理信息系统研究。WebGIS中瓦片地图关键技术研究 苏旭明 谭建成 (中华测绘服务公司,北京100088 )[摘 要] 针对WebGIS系统的特点,提出利用金字塔瓦片地图技术在服务器端预先生成不同级别的瓦片地图方法, 提高地图的生成、发布、显示和浏览效率,减轻服务器负载和网络传输负担。文中简要介绍了瓦片地图技术的实现模型。并对瓦片地图金字塔模型的构建、瓦片地图金字塔数据的组织、瓦片地图索引机制建立等关键技术进行了阐述。 [关键词] W ebGIS;瓦片地图;金字塔模型;四叉树[中图分类号] P283.7 [文献标识码] B [文章编号] 1 007-3000(2012)02-4网络地理信息系统(WebGIS)是Web技术与GIS技术相结合的产物,随着Internet技术和计算机技术的飞速发展,WebGIS已成为当前GIS领域的研究热点。其实现方式多种多样,其 中以基于HTTP、XML、GML的B/S结构的瘦客户端和Ajax(AsynchronousJavaScrip t andXML)的RIA(Rich Internet Application,富网络应用或富客户端)技术模式为主流。其中后者用户只要拥有一台上网的计算机和任一款浏览器,不需要安装任何插件或其他客户端软件,就可以使用WebGIS带来的服务。客户端只完成数据 量较小的简单操作和应用功能, 其它所有的基础性、全局性的GIS功能操作都集中在服务器端实现,因此,服务器端的实现方式会直接决定 WebGIS系统的性能。而其中Web地图的生成、 发布、显示和浏览速度是决定WebGIS系统性能的关键。传统的WebGIS系统是客户端发送一次地图浏览请求,服务器根据请求实时生成一张图片, 时间长、效率低、出图慢。而利用金字塔瓦片地图技术在服务器端预先生成不同级别的瓦片地图,能大大提高地图的生成、发布、显示和浏览速度效率,极大地改进客户端和服务器端的交互效率,减轻服务器负载和网络传输负担。 1 瓦片地图技术的实现模型 瓦片地图技术的实现模型如下图图1所示。主要由服务器端的金字塔瓦片地图库的构建和客户端的Aj ax技术组成 。图1 瓦片地图技术的实现模型 服务器端的金字塔瓦片地图库的构建方法: 主要是对数据库中的空间数据进行符号化显示和分层瓦片切割(瓦片大小可以是128×128像 素,256×256像素,512×512像素等),生成不同层次的电子地图瓦片,建立地图瓦片金字塔模型,采用数据库或文件目录的方式对瓦片地图数 9

制作自己的Web服务瓦片地理底图

制作自己的Web服务瓦片地理底图 最近的Web服务开发过程中遇到的问题是:如何制作自己的瓦片地理底图。因为:1)在单位内网中使用,不能通过外网直接调用高德、百度、或者谷歌的在线地图;2)主要涉及海域的中、小比例尺应用,即使有高德离线地图,也不实用;3)只涉及轻量级、简单的Web服务,不想用ArcGIS Server 等高端系统作为后端支撑。最后拟定的实施方案:1)采用ETOPO1、GEBCO_2014网格地形数据作为基础数据,绘制地理底图;2)通过Global Mapper软件将地理底图切割成OpenStreetMap(OSM)方式组织的瓦片地图;3)利用免费开源的Leaflet JS库实现地图交互。下面一一道来,供作参考。 1.绘制地图 1.1 下载ETOPO1数据 首先从美国国家海洋和大气管理局(NOAA)的环境信息中心下载ETOPO1全球地形数据,网址https://https://www.sodocs.net/doc/6c11468402.html,/mgg/global/global.html。ETOPO1的分辨率为1个弧分(约1.8公里),下载数据地理范围为:经度 60°E~ 180°E,纬度 20°S~60°N,图1为Sufer绘制的地形晕渲图。(注:如果机器内存及软件处理能力足够,可全部采用GEBCO_2014数据绘图,不一定需要ETOPO1数据。) 图1:ETOPO1地形晕渲图

1.2 下载GEBCO_2014数据 从英国海洋数据中心(BODC)下载最新的通用大洋水深图数据GEBCO_2014,网址https://www.sodocs.net/doc/6c11468402.html,/data_and_products/gridded_bathymetry_data。GEBCO制图项目由国际水道测量组织(IHO)和联合国教科文组织下属的政府间海洋学委员会(IOC)联合指导,并由英国海洋数据中心(BODC)负责更新与维护。GEBCO_2014网格数据的分辨率为30弧秒(约0.9公里),下载数据地理范围为:经度 102°E~ 140°E,纬度 0°~42°N,图2为Sufer绘制的地形晕渲图。 图2:GEBCO_2014地形晕渲图

《Google Map中的瓦片》

《Google Map中的瓦片》 分类:地图2013-07-03 11:56631人阅读评论(0)收藏举报 一、墨卡托投影google map使用的是EPSG:900913标准墨卡托投影(等角圆术地图投影)y = R*ln(tan(pi/4 + a/2)) x = R*b 当y等于piR时,投影图正好为一个正方形,可行到纬度为85.05113度,把以Google map 的最大纬度为 [-85.05113,85.05113],最大经度为[-180,180]。赤道长度为6378137米,那么根据公式可求科最大边 界[-20037508.342789244,20037508.342789244]米。 二、瓦片金字塔google map是由256*256的图片拼接而成的,称为瓦片。在初始等级(0)时,整个地球只投影在一张瓦 片上,也就是256像素代表了40075016.685578488米。即 40075016.685578488/256=156543.033928041( 米/像素)。 缩入由四叉树实现,即放大一个级别后,原来一张图片分裂成4张。见下图 三、瓦片url形如: https://www.sodocs.net/doc/6c11468402.html,/vt/lyrs=m@180000000&hl=zh-CN&gl=cn&src=app&x=3&y=1&z=2&s =Ga mt0:服务器名(Google Map有四个服务器) hl:语言 x:瓦片X轴的信息编号 y:瓦片Y轴的信息编号 z:瓦片的缩放级别

s:""和"Galileo"共8个字符(无实际意义) 计算关系: mt = (x + y) % 4 s = (3 * x + y) % 8 空白瓦片url https://www.sodocs.net/doc/6c11468402.html,/intl/zh-CN_cn/mapfiles/transparent.png 注意:瓦片信息编号是从左上角(0,0)开始的。

瓦片数据MBTiles存储简介

瓦片数据MBTiles存储简介 地图制作者面对一个数以百万计的地图瓦片残酷的现实:大多数文件系统和传输协议对处理数以百万计的图像不是很有效,在磁盘为FAT32格式中,一个文件夹中最多含有65536个文件,HFS最多能列出32,767个文件,EXT3超过20000个文件时会变的很慢。不论是你通过USB还是网络来复制数以百万计的瓦片数据是低效并且缓慢的。MBTiles利用SQLite数据库来存储,并提供一种规范,使得数以百万的瓦片数据存储在一个文件中,而且SQLite数据库支持多种平台,所以使用MBTiles在移动设备上浏览瓦片数据是比较理想的方式。 ? 简单介绍下SQLITE ? 如果你之前使用过SQL数据库,比如MySQL或PostgreSQL),那么使用SQLite数据库会觉得很熟悉,您可以运行熟悉的SQL SELECT、INSERT、UPDATE语句,并创建表、索引、视图。SQLite和其他数据库之间的区别是:每个SQLite数据库只包含在一个文件,没有外部权限系统,数据库后台进程,或配置。每个.sqlite文件是一个独立的数据库,你可以从电脑复制一个.sqlite文件到移动设备中,它的行、表和索引都可完全使用。 SQLite是很小的并且是无处不在的:iTunes使用它来存储元数据,firfox使用它来存储缓存信息,还有一些其他产品(虽然过时了,但仍记忆犹新) 总之,SQLite非常适合作为一个便携式,单个文件解决方案和用于存储和网络地图服务。 ? 在SQL中使用瓦片坐标 ? 在WEB地图介绍中我们看到,瓦片是参照了他们的z/x/y形式坐标,在磁盘存储上,他们通常存储在以z、x为名字上的目录中,这样就有一个瓦片文件路径是0/0/0.png,MBTiles 提供了这样一个功能:瓦片表

如何将谷歌地图导出为百度瓦片(新版)

如何将谷歌地图导出为百度瓦片 一、概述 在国内的商用地图中,百度和高德地图是比较用常用并为大家所熟知的,尤其是对于WebGIS开发者来讲,百度API和高德API都是比较常用的项目开发选型平台。但这两个平台都具有一个美中不足的缺点,即卫星影像的高清区域相较谷歌卫星地图而言少很多,且拍摄时间都比较久远,而且没有提供历史卫星影像。 鉴于以上所述原因,这里以百度API为例,提供一种可以将谷歌地球高清卫星影像用百度API进行调用的解决方案。由于百度地图的坐标是在火星坐标(GCJ-02)的基础之上,进行二次加偏的百度BD09专用坐标系,因此需要先将谷歌地球卫星影像下载并投影转换为百度BD09坐标系并切片之后,才可以用百度API进行调用。 这里我们以“古田县”为例,说明如何用万能地图下载器下载谷歌地球高清卫星影像,并将卫星影像投影转换为百度BD09切片的过程。最后,会提供一份百度API调用离线地图并进行二次开发WebGIS系统的案例。 二、下载谷歌卫星地图 下载谷歌卫星影像数据时,可以通过屏幕范围下载、框选矩形范围下载、绘制多边形范围下载、道路沿线下载和导入下载范围下载等多种下载方式。 导入下载范围的文件可以支持Google Earth (*.kml;*.kmz)、

Shapefile(*.shp)、AutoCAD (*.dxf;*.dwg)、Mapinfo (*.tab)、GPS 文件(*.gpx)、GMT 文件(*.gmt)、Excel (*.csv;*.cls)和文本文件(*.txt)等多种矢量格式。 这里我们以按行政区划范围下载为例。 在万能地图下载器的右上角行政区划中,选择显示“古田县”行政区划,同时会显示“下载”按钮,点击该按钮可以新建下载任务。 在“新建任务”对话框,在该对话框中可以参考文件大小和打印尺寸等参数选择适合的级别。下载单张大图时,一般情况下选择16到19级当下载结果最终需要导出为瓦片时,一般是从当前行政区划显示的级别开始选择(这里是第11级),一直选择到第19级(国内19级清晰度效果最佳,19级以上基于19级放大),由于数据量非常大,这里只为了说明如何下载谷歌地球影像并投影转换为BD09瓦片的方法,因此这里以选择到第15级为例。

如何使用地图瓦片

分布式切图服务——瓦片使用篇Written by:iServer 2013-5-17 10:19:00 如果已经通过分布式切图服务生成了地图瓦片,那么如何配置地图服务才能使用这些瓦片呢?下面我们将介绍如何使用切图得到的地图瓦片。如果已经通过分布式切图服务生成了地图瓦片,那么如何配置地图服务才能使用这些瓦片呢?下面我们将介绍如何使用切图得到的地图瓦片。使用地图切片库 在多台服务器上分布式存储的地图切片,通过文件系统进行管理,这样服务器端就无需进行数据同步,直接对客户端提供地图服务。在线地图服务接收到地图请求时,会自动在地图瓦片中检索合适的切片并返回给客户端。此外,分布式存储的地图瓦片也可以导出为MBTiles标准格式,供移动端离线使用,如iClient Flex Bev、iClient for Android等。 1. 配置地图服务使用地图切片库 通过分布式切图服务切地图瓦片时,需要通过服务组件来选择地图,相应地,使用地图瓦片时也需要对地图服务组件进行设置。 具体方法是:登录服务管理器,打开地图瓦片对应的地图服务组件,进入配置页面(如,勾选启用缓存,选择缓存 类型为“FastDFS”,并导入存储配置(即选择存储ID)后,该地图服务组件所发布的服务即可使用指定的FastDFS文件系统中的地图瓦片。

2. 将地图切片导出为MBTiles格式供离线使用 SuperMap iServer支持将FastDFS分布式文件系统中每一幅地图对应的地图瓦片集导出为MBTiles格式,便于传播和移动端(如iClient Flex Bev、iClient for Android等)的离线使用。 使用方式是: ?进入服务管理器的“切片存储”选项卡,页面列出了服务器上当前添加的各个切片存储的存储位 置信息,选择类型为“FastDFS”的切片存储?点击存储ID进入FastDFS切片存储页面 ?点击切片集列表右端的“导出mbtiles”链接,填写导出目录、比例尺、范围等参数,即可将切片导出为MBTiles格式。当导出完成后,可点击“下载”链接,将导出的MBTiles文件下载到本地。

在ArcGIS中发布GoogleEarth瓦片为网络地图服务(wms)

在ArcGIS中发布GoogleEarth瓦片为网络地图服务(wms) 说明 本案例实现内容:GoogleEarth瓦片地图的获取、在ArcGIS Server Manger中发布下载好的影像瓦片数据。 本实例使用软件版本:ArcGIS10.2,水经注万能地图下载器。 影像瓦片来源“水经注万能地图下载器”。如果没有安装本软件,可以百度“水经注软件”到官方网站下载。 一、下载瓦片数据 启动水经注万能地图下载器,选择“卫星.谷歌地球”在线地图,点击“框选下载区域”,双击下载区域,选择级数,如下图。 由于我们需要导出瓦片数据,为了增加缩放效果,这里我们从1级到10级

都勾选上。选择好级别后,点击开始下载。下载完成后会弹出对话框询问是否要立即导出,选择“是”,然后显示“导出图片数据”对话框,如下图所示。 在该对话框中,选择导出“瓦片:ArcGIS Server”,导出级别“1-10”,点击“输出”按钮导出数据,并叠加上标签即可。 默认导出路径为“D:\SGDownload\ tt2_ArcgisServerTiles”。 二、在ArcGIS中发布服务 首先把刚下载好的瓦片文件在arcmap中打开,可以预览到瓦片地图,如下图。

发布服务,选择“文件”,“共享为”,“服务” 弹出对话框,点击“下一步”

点击“继续”,弹出服务编辑器对话框。 这里的设置就是重点了。

1、点击“缓存”; 2、选择“使用缓存中的切片”;2、选择“切片方案”; 3、选择我们下载瓦片文件夹中的conf.xml文件; 4、选择“手动构建缓存”;最后“发布”。 发布成功后,可以再ArcGIS manager中查看,然后会发现我发布的地图服务是空白的。 接下来就需要添加我们下载好的瓦片影像了。 在“目录”下右击发布好的文件,选择“管理缓存”,选择“导入缓存”,弹出对话框,导入下载好的瓦片如下图 导入成功后,在ArcGIS Server Manager中保存并重新启动“testTiles”服务。 现在就可以预览到发布好的瓦片服务了。 最后我们开启WMS服务,如下图。

相关主题