2、双击又测树目录,加载.earth文档,如有修改,可保存
3、xml-->查看方式设定文本显示格式。
4、可在命令文本框中,自定义命令。
5、文件-->运行,运行“命令”串,查看osgEarth实例程序。
方法/步骤1、测试数据我们主要是用osgearth_viewer这个库,让osgearth直接加载下载下来的tif文件。为此,我们要为下载下来的tif文件写一个.earth的配置文件,.earth文件里面主要包含tif文件的地址信息,截图如下:
在这个.earth文件中,最重要的一条信息就是:
<image driver="gdal" name="world-tiff">
<url>D:/矩形区域_#24_卫图_Level_13.tif</url>
</image>
2、这样子我们可以通过读取这个.earth文件来读取我们下载的ID为“矩形区域_#24_level_13.tif”这个文件,读取的时候我们要用到osgearth_viewer这个命令,在dos环境下输入命令读取,截图如下:
3、Osgearth_viewer表示我们要用这个库来读取,D:/gdal_tiff.earth表示D盘下的.earth文件。意思就是我们要用osgearth_viewer这个库来读取D盘下的gdal_tiff.earth文件。由于之前已经说明这个.earth是我们下载的tif文件的配置文件,因此通过这行命令就可以读取tif文件了。需要说明的是,由于tif文件都比较大,因此直接用osgearth加载的话可能会比较慢,所以需要大家耐心等待。
加载完成之后如果显示是这样子的,说明文件没有损坏:
4、把地图放大,可以明显看到我们下载的地图,如图所示:
5、如果加载出来的数据某一部分是黑的或者全部都是黑的,如图所示。说明数据已经损坏,损坏原因不明,可能是BigeMap软件本身的缺陷。数据一旦损坏请重新下载,不然切出的地图数据也会有问题的。
6、数据切片
前两部分主要是说明了数据的准备,这部分主要是进行数据的切片。数据切片我们主要用到两个东西。一个就是数据的配置文件——.earth文件;另一个就是osgearth提供的切片工具osgearth_package。
earth配置文件如图所示:
7、里面包含了我们要切割的所有源数据的地址信息。
另外我们还需要在DOS环境下输入命令,进行切割,如图所示:
8、Osgearth_package表示我们要用这个工具进行切图;--tms表示我们要用到的源数据的配置文件为:gdal_tiff.earth;--out表示输出文件夹;--Max-level表示切图的最大层级。
通过上述命令,osgearth就会通过源数据图的分辨率自动计算可以切多少层,每层切多少瓦片。切图过程需要一定时间,切完之后的文件如图所示:
可以看到切完之后生成了一个.xml文件,这个文件是对切片的配置文件,包括文件ID和索引等一些基本信息,如果想要读取这些瓦片数据的话,直接读取这个.xml配置文件即可。
9、完整演示
前面我们叙述过,osgearth读取文件需要用osgearth_viewer这个工具读取数据的.earth配置文件,而经过切片之后,切片数据会生成一个.xml的配置文件,要想读取切片之后的数据就要读取这个.xml文件,因此osgearth要想读取切片完成之后的数据,就要读取.earth文件,而这个.earth文件是指向包含切片数据信息的.xml文件的。这个.earth文件的详细信息如图所示:
10、将.earth指向.xml文件
至此,一个完整的数据准备过程结束了。
系统:macOS 10.13
Xcode:10.1
Cmake:3.11(https://cmake.org/download/)
OSG:3.6.1(http://www.openscenegraph.org/index.php/download-section/stable-releases)
OSGEarth:2.10(https://github.com/gwaldron/osgearth/tree/2.10)
3rdParty:https://pan.baidu.com/s/1Z9Hx912VOZgo4h8cgSiCRQ 密码:4tsk
新建一个文档,将3rdParty、OSG、OSGEarth文件都放入
打开Cmake,点击Tools--How to install For Command Line Use
开始编译OSG,这里说一下,OSG的文档写得很友好,打开里面的readme.md按照他的CMAKE Command就可以,如果想要用CmakeGUI一条一条设置也可以,但是最好设置一条就Configure一下,解决掉红色提醒后再Generate。
这里仅介绍使用终端以命令行方式去Build:
cd 进你的OpenSceneGraph3.6.1文件夹,THIRDPARTY_PATH的路径就是你的3rdparty文件路径,IPHONE_SDKVER和IPHONE_VERSION_MIN可以按照你的Xcdoe版本自己设置,显示完成后打开OpenSceneGraph.xcodeproj,添加New Scheme,选择All Build,使用Release Build。如果需要跑OSG的DEMO,选择Target--example_osgViewerIPhone--Build Settings--Other Linker Flags--Release 删除oepngGl 以及上面的-framework,Build。
如果你用的是Xcode10以上,可能会在编译Pthread.cpp的时候报错,可以将错误的地方注释掉不影响编译,当然你也可以选择较低的Xcode版本,这样比较稳定
cd 进入osgearth文件夹,在终端输入以下命令:
同样,将文件位置改为你自己的位置即可,打开project文件,选择文件----projectSetting---buildSystem 选择legacy build system,将build模式该为release,选择example目标build,静待完成。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)