VPB和OSGGIS安装
第一部分VPB安装
VirtualPlanetBuilder是一种地形数据库创造工具,是能够阅读各种地理图像和高程数据并建立小面积地形数据库,乃至大规模如整个地球的庞大数据库。这些数据库可以上传到互联网,并能够提供像在线googleEarth一样的风格漫游整个地球的数据库,或保持对本地磁盘高速接入等所需的专业飞行模拟器。前面所讲的VirtualPlanetBuilder建立的数据库,如果要运行该数据库产生一个可视化场景,那么你将需要一个基于OSG的应用程序。其实VPB本身是一个基于OSG实时图形工具箱,它可以创建基于OSG的二进制的最高效率的数据库。
1.准备工作
l Vpb获取
不同版本vpb与osg对应关系:
最新版:
Svn: checkout http://www.openscenegraph.org/svn/VirtualPlanetBuilder/trunk VirtualPlanetBuilder
Vpb-0.9.11:
因osg安装版本是osg 2.9.5所以我们去下载Vpb-0.9.11:
Svn:http://www.openscenegraph.org/svn/VirtualPlanetBuilder/tags/VirtualPlanetBuilder-0.9.11/ VirtualPlanetBuilder
l Vpb安装需要插件下载
GDAL和Libsquish:
http://www.openscenegraph.org/projects/VirtualPlanetBuilder/wiki/Dependencies
2.vpb编译
GDAL编译由于在安装osgearth时已经说明,不再累赘,网上也有编译好的gdal包供下载。
Libsquish编译也是很简单的,直接编译就可以了。
Vpb编译:
假设前提OSG的路径是D:/OSG/OpenSceneGrap
将VirtualPlanetBuilder-0.9.11中的CMakeLists.txt拖动到Cmake上,进行如下配置:
点击 configue 配置后,再生成即可。
用vs2008打开VIRTUALPLANETBUILDER.sln直接编译。
编译完成后将D:\OSG\VirtualPlanetBuilder-0.9.11\lib\Release里的文件拷贝到
D:\OSG\VirtualPlanetBuilder-0.9.11\bin\Release下。
将D:\OSG\VirtualPlanetBuilder-0.9.11\bin环境变量中,整个过程完成。
编译教训:版本一定要匹配。
3.测试
1.Osgdem运行例子所需数据下载地址:
http://www.cc.gatech.edu/projects/large_models/ps.html
Download Elevation Map: 16385 × 16385 PNG: 188MB
Download Texture Map: 16384 × 16384 PNG: 268MB
2.GDAL对高程数据和影像数据格式化处理:
gdal_translate ps_height_16k.png ps_height_16k.tif
gdaladdo -r average ps_height_16k.tif 2 4 8 16 32
gdal_translate ps_texture_16k.png ps_texture_16k.tif
gdaladdo -r average ps_texture_16k.tif 2 4 8 16 32
3.使用osgdem命令生成模型文件
osgdem --xx 10 --yy 10 -t ps_texture_16k.tif \
--xx 10 --yy 10 -d ps_height_16k.tif \
-l 8 -v 0.1 -o puget.ive -a pegout.osga
参考网站:
http://www.openscenegraph.org/projects/osg/wiki/Support/UserGuides/osgdem
第二部分 OSGGIS安装
OSGGIS是OSG的一个分支,专注于GIS的应用。目前虽然还比较简单,但已经将很多基础的GIS理论与OSG进行的比较好的结合
官网:http://wush.net/trac/osggis/wiki
OSGGIS的项目目的是:使在OSG中更容易的访问、显示、查询GIS矢量数据。
OSGGIS的实现目标:是为了减少将GIS集成在OSG中所遇到的各类主要问题的复杂度。
1. 读取各类GIS数据
2. 处理地图投影
3. 访问GIS数据属性
4. 在地形模型上显示矢量数据
5. 管理大规模地物的几何体
安装
1.通过svn获取OSGGIS
https://wush.net/svn/osggis/trunk
2. 下载所依赖的第三方库gdal,lua,tolua,expat
下载链接:http://wush.net/trac/osggis/wiki/Downloads
a) GDAL可选择gdal-1.8.0
b) Lua编译:最新版是lua-5.2(beta),我们选择稳定的lua-5.1.4
lua的项目默认是用在linux上用bjam编译的。如果要在windows上编译,
可vs的命令行进入lua根目录,执行“etc\luavs.bat”即可,执行成功后会在src目录下生成以下四个文件:
lua.exe、luac.exe、lua51.lib、lua51.dll
把头文件都放到include文件夹下,把lib文件都放到lib文件夹下。
c) Tolua编译
用vs建立一个不带编译头的win32的项目,把tolua源码文件夹下的src\lib的所有.c和.h添加到项目中来。(其原因可以参考tolua源码文件夹下的INSTALL文件,该文件可用写字板打开)。最后生成lib文件。tolua源码文件夹下的src\bin下的.c和.h编译生成exe文件。
d) Expat下载链接:http://sourceforge.net/projects/expat/
e) 官网提供一个预编译的第三方库:
http://osggis.org/downloads/osggis_3rdparty_win32_vs8.zip
还推荐了一个包好多个插件的工具FWTools:
包含的子包有OpenEV、MapServer、GDAL/OGR、PROJ.4、OGDI、Python
下载链接:http://fwtools.maptools.org/
f) OSGGIS数据示例:
美国波士顿地区地形数据:http://osggis.org/downloads/boston-sample.zip
(需要使用OSGDEM生成)
安装:
将D:\OSG\OSGGIS下的CMakeLists.txt拖动到Cmake上,添加:
OSG_DIR (PATH) D:/OSG/OpenSceneGraph
先configure一次,进行相应配置如下:
配置完成后生成项目解决方案,用VS打开编译即可(Debug和Release两个版本)。
运行D:\OSG\OSGGIS\bin下的exe文件,缺什么.dll和.lib到D:\OSG\OSGGIS下搜索拷贝到bin文件夹下即可(gdal18.dll在GDAL编译包里有)。
注:(vs2010出现link2005处理办法:在项目属性链接器上加上:/FORCE:MULTIPLE即可)