[翻译]osgdem傻瓜指南

标签:
osgosgdemvpb大地形制作it |
osgDem
By FreeSouth
osgDem是一个实用程序,它可以使OSG实时的渲染卫星图像、数字高程图且产生高压缩比的数据资料文件。下面将来讲解如何使用这一应用程序,列出一系列可供选择的操作:
傻瓜入门指南
下面的步骤包含如何获得并且编译过osgTerrain/osgdem和一个使用其处理图像和DEM去产生一个数据页的例子:
1.下载,编译&安装GDAL(http://www.gdal.org/)
set GDAL_INSTALL = true
export OSG_DEPENDENCIES=/home/billgates/my_osg_dependencies
2.作为UNIX用户,首先把Make/dependencies拷一份并且改变GDAL_INSTALL值为真:
set GDAL_INSTALL = true
随后通过改变OSG_DEPENDENCIES其值为你文件夹的绝对路径告诉构建者使用你自己定义的依赖:
export OSG_DEPENDENCIES=/home/billgates/my_osg_dependencies
3.重建OSG&安装(如果你还没有的话)
4.确保你有至少两个G的硬盘空间,因为后面你将需要它。
5.下载一些数据,在这个例子中我们使用Puget Sound data,在:
http://www.cc.gatech.edu/projects/large_models/ps.html
Download Elevation Map: 16385 × 16385 PNG: 188MB
Download Texture Map: 16384 × 16384 PNG: 268MB
(真要人的命:译者注)
为了避免在处理数据时数据混淆,我使用GDAL应用程序去产生视图(基本上解析的图文件都是.tiff格式)通过:
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
7.现在是时间来产生你的PagedLOD数据页了,分的级数越多将会越耗费时间(指数级的),osgdem恰恰在前后都使用了osgTerrain:http://club.lon3d.com/static/image/smiley/default/biggrin.gifataSet,这是实打实的硬活。命令行如下:
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
然后出去吃罢中午饭,下午饭最好再来杯咖啡(译者注:在编译OSG源文件时仅仅建议我们去喝杯咖啡,可见此活需要时间之长,任务量之大)因为这个将会占用一点点的时间,或许你正后悔时间流逝,于是乎可以使用-l操作来设置一个低点的级别,比如3
上面所用到的命令行操作意思是:
前面的一行--xx和—yy是指明每个象素所包含的图形大小,单位是米,因为这些png/tif不包含任何的地理空间数据(geospatial data),如果你有地理空间数据的文件,则不需要此步骤。
第二部分 –t是指明使用的纹理图,你可以根据自己的爱好使用很多次,osgTerrain:http://club.lon3d.com/static/image/smiley/default/biggrin.gifataSet将会把其解析成一个数据页。
第三部分-d 是指明要会用的数字高程图,同样可以根据心情来使用任意的次数。
-l操作指明产生数据页的最大级数,如果你使用一个比数据页产生的更大的级别的话,产生时其将会核对源文件是否与产生数据页相符,数据页产生器将会因地制宜。
The -v option specifies the scaling factor which the height is multiplied by.
-v操作指明比例因子,计算高度时会需要的。
-o指明所产生的数据页输出路径名,这将会是你打开文件的第一个,相当于启动文件,后缀名可以是.ive或是.osg,.ive会更快且内嵌很多文件。
最后使用-a告诉osgdem把所有这些文件都写入到一个档案文件中,由于这是一个OSG的档案格式文件(译者注:osg archive),故而使用.osga做为其扩展名。使用一个档案文件的好处是易于管理,这将会节省大量的时间,看之美观,用之易用。
8.关键时间。现在来在程序中来取数据页了,如果你使用基于osgViewer::Viewer或是CompositeViewer的OSG程序,做这件事简直如拾草芥,所有的数据页支持都已经在内部做好,可以通过下面这条貌似不起眼的命令来Hi一下:
osgviewer pegout.osga
9.如果说你的图像或是DEM文件有高程数据与之关联,那么就用不着先前说的那个--x,--y -v操作了,简单的说,只需要通过类似于-t image.tif和-d terran.dt0的操作就可以了,也不用怎么设置坐标系。
10.osgdem可以自己控制动态过渡(译者注:往往看着貌似有马赛克样的效果),这些可以通过下面的操作来指定: -t和
-d 或者 -t 和
-d .
osgdem 操作
下面是osgdem的所有操作,可以通过下面的命令来查看:
osgdem --help
你将会看到:
osgdem --help
Usage: osgdem [options] filename ...
Options:
--HEIGHT_FIELD 创建高程数据
--LOD 创建LOD数据
--POLYGONAL 创建高程数据field database
--PagedLOD 创建LOD数据页
--RGB-16 16位图像
--RGB-24 24位图像
--comment 往顶部点炮的文件加一个注释描述什么的
--compressed 使用OpenGL压缩图像
--cs设置坐标系统(译者注:关于坐标系统,最后有述),字串必须格式正确(GDAL/OGR
forms, complete WKT, PROJ.4,EPS)
--max-anisotropy 定义纹理显示级别,默认为1.0
--max-visible-distance-of-top-level 设置最大视距
--mip-mapping-hardware 使用mipmaps,保证有相应数据在指定位置上。
--mip-mapping-imagery 使用mipmaps,且在图像中产生mipmaps .
--no-mip-mapping 不对纹理使用mipmaps.
--radius-to-max-visible-distance-ratio 设置最大的可视距离比率。
--skirt-ratio设置边缘比率
--tile-image-size 设置单片图片大小
--tile-terrain-size 设置单片地形大小
--wkt为图或是dem设置坐标的系统(in WellKownText
form.)
--wkt-file用文件来完成上面的操作
-d指明要处理的高程图
-e产生的模型尺寸范围
-h or --help 演示帮助信息
-l设置LOD等级
-m设置要处理的模型文件
-o设置输出的模型文件
-t指明要处理的纹理文件
-v 设置垂直增率
坐标系统说明:
WKT的坐标系统不是十分的难理解,但是也并不是十分的人性化。Osgdem使用GDAL中常用的PROJ4格式来指明—cs的参数,这个东西的格式还差强人意:
例子:
? 经度+纬度+高度的坐标系统单位度量为:osgdem ... --cs "+proj=latlong +datum=WGS84" -o ...
? UTM坐标系统 在本例中参考值为47米: osgdem ... --cs "+proj=utm +zone=47" -o ...
? 地心坐标系统, 起点是地心: osgdem ... --geocentric -o ...
原文地址:
http://www.openscenegraph.org/pr ... t/UserGuides/osgdem
By FreeSouth
osgDem是一个实用程序,它可以使OSG实时的渲染卫星图像、数字高程图且产生高压缩比的数据资料文件。下面将来讲解如何使用这一应用程序,列出一系列可供选择的操作:
傻瓜入门指南
下面的步骤包含如何获得并且编译过osgTerrain/osgdem和一个使用其处理图像和DEM去产生一个数据页的例子:
1.下载,编译&安装GDAL(http://www.gdal.org/)
set GDAL_INSTALL = true
export OSG_DEPENDENCIES=/home/billgates/my_osg_dependencies
2.作为UNIX用户,首先把Make/dependencies拷一份并且改变GDAL_INSTALL值为真:
set GDAL_INSTALL = true
随后通过改变OSG_DEPENDENCIES其值为你文件夹的绝对路径告诉构建者使用你自己定义的依赖:
export OSG_DEPENDENCIES=/home/billgates/my_osg_dependencies
3.重建OSG&安装(如果你还没有的话)
4.确保你有至少两个G的硬盘空间,因为后面你将需要它。
5.下载一些数据,在这个例子中我们使用Puget Sound data,在:
http://www.cc.gatech.edu/projects/large_models/ps.html
Download Elevation Map: 16385 × 16385 PNG: 188MB
Download Texture Map: 16384 × 16384 PNG: 268MB
(真要人的命:译者注)
为了避免在处理数据时数据混淆,我使用GDAL应用程序去产生视图(基本上解析的图文件都是.tiff格式)通过:
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
7.现在是时间来产生你的PagedLOD数据页了,分的级数越多将会越耗费时间(指数级的),osgdem恰恰在前后都使用了osgTerrain:http://club.lon3d.com/static/image/smiley/default/biggrin.gifataSet,这是实打实的硬活。命令行如下:
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
然后出去吃罢中午饭,下午饭最好再来杯咖啡(译者注:在编译OSG源文件时仅仅建议我们去喝杯咖啡,可见此活需要时间之长,任务量之大)因为这个将会占用一点点的时间,或许你正后悔时间流逝,于是乎可以使用-l操作来设置一个低点的级别,比如3
上面所用到的命令行操作意思是:
前面的一行--xx和—yy是指明每个象素所包含的图形大小,单位是米,因为这些png/tif不包含任何的地理空间数据(geospatial data),如果你有地理空间数据的文件,则不需要此步骤。
第二部分 –t是指明使用的纹理图,你可以根据自己的爱好使用很多次,osgTerrain:http://club.lon3d.com/static/image/smiley/default/biggrin.gifataSet将会把其解析成一个数据页。
第三部分-d 是指明要会用的数字高程图,同样可以根据心情来使用任意的次数。
-l操作指明产生数据页的最大级数,如果你使用一个比数据页产生的更大的级别的话,产生时其将会核对源文件是否与产生数据页相符,数据页产生器将会因地制宜。
The -v option specifies the scaling factor which the height is multiplied by.
-v操作指明比例因子,计算高度时会需要的。
-o指明所产生的数据页输出路径名,这将会是你打开文件的第一个,相当于启动文件,后缀名可以是.ive或是.osg,.ive会更快且内嵌很多文件。
最后使用-a告诉osgdem把所有这些文件都写入到一个档案文件中,由于这是一个OSG的档案格式文件(译者注:osg archive),故而使用.osga做为其扩展名。使用一个档案文件的好处是易于管理,这将会节省大量的时间,看之美观,用之易用。
8.关键时间。现在来在程序中来取数据页了,如果你使用基于osgViewer::Viewer或是CompositeViewer的OSG程序,做这件事简直如拾草芥,所有的数据页支持都已经在内部做好,可以通过下面这条貌似不起眼的命令来Hi一下:
osgviewer pegout.osga
9.如果说你的图像或是DEM文件有高程数据与之关联,那么就用不着先前说的那个--x,--y -v操作了,简单的说,只需要通过类似于-t image.tif和-d terran.dt0的操作就可以了,也不用怎么设置坐标系。
10.osgdem可以自己控制动态过渡(译者注:往往看着貌似有马赛克样的效果),这些可以通过下面的操作来指定: -t
osgdem 操作
下面是osgdem的所有操作,可以通过下面的命令来查看:
osgdem --help
你将会看到:
osgdem --help
Usage: osgdem [options] filename ...
Options:
--HEIGHT_FIELD 创建高程数据
--LOD 创建LOD数据
--POLYGONAL 创建高程数据field database
--PagedLOD 创建LOD数据页
--RGB-16 16位图像
--RGB-24 24位图像
--comment 往顶部点炮的文件加一个注释描述什么的
--compressed 使用OpenGL压缩图像
--cs
--max-anisotropy 定义纹理显示级别,默认为1.0
--max-visible-distance-of-top-level 设置最大视距
--mip-mapping-hardware 使用mipmaps,保证有相应数据在指定位置上。
--mip-mapping-imagery 使用mipmaps,且在图像中产生mipmaps .
--no-mip-mapping 不对纹理使用mipmaps.
--radius-to-max-visible-distance-ratio 设置最大的可视距离比率。
--skirt-ratio
--tile-image-size 设置单片图片大小
--tile-terrain-size 设置单片地形大小
--wkt
--wkt-file
-d
-e
-h or --help 演示帮助信息
-l
-m
-o
-t
-v 设置垂直增率
坐标系统说明:
WKT的坐标系统不是十分的难理解,但是也并不是十分的人性化。Osgdem使用GDAL中常用的PROJ4格式来指明—cs的参数,这个东西的格式还差强人意:
例子:
? 经度+纬度+高度的坐标系统单位度量为:osgdem ... --cs "+proj=latlong +datum=WGS84" -o ...
? UTM坐标系统 在本例中参考值为47米: osgdem ... --cs "+proj=utm +zone=47" -o ...
? 地心坐标系统, 起点是地心: osgdem ... --geocentric -o ...
原文地址:
http://www.openscenegraph.org/pr ... t/UserGuides/osgdem