查看: 2482|回复: 14

osggis编译的问题!

[复制链接]

该用户从未签到

发表于 2009-1-7 20:07:37 | 显示全部楼层 |阅读模式
已经到了最后一步,好像不知是什么版本出问题。


我用的是osg2.6和其他第三方库都是随书光盘内的

[ 本帖最后由 口口广大 于 2009-1-7 20:14 编辑 ]
test.JPG
test.JPG

该用户从未签到

发表于 2009-1-7 22:12:46 | 显示全部楼层
清理目标文件,重新编译一下看看?
不过这似乎是 依赖库的VC版本 与 您当前的VC版本 不一致造成的问题。例如依赖库使用VS2005 SP1,而您的2005没有打上SP1补丁?

该用户从未签到

 楼主| 发表于 2009-1-7 23:30:00 | 显示全部楼层
可能是的,我的2005没有sp1补丁,明天试试看,谢谢!

该用户从未签到

 楼主| 发表于 2009-1-8 20:07:52 | 显示全部楼层
今天打上了sp1补丁,果然可以成功编译了,谢谢。但是,运行教程上的例子,仍然有问题。

见图一,

用osgdem --bluemarble-west -t land_shallow_topo_west.tif --bluemarble-east -t land_shallow_topo_east.tif --geocentric -l 12 -o earth.ive

生成的地球没什么问题,就是不太圆,有棱有角的感觉。

[ 本帖最后由 口口广大 于 2009-1-8 20:17 编辑 ]
osggis2.JPG

该用户从未签到

 楼主| 发表于 2009-1-8 20:19:54 | 显示全部楼层
利用osggis_makelayer --terrain earth.ive --input world.shp --output new_earth.ive --geocentric --lines --random-colors --no-lighting --gridded --grid-rows 16 --grid-colos 32 添加矢量图形。在百分之百后,不知道抱什么错。
osggis1.JPG

该用户从未签到

 楼主| 发表于 2009-1-8 20:20:50 | 显示全部楼层
最后的结果,只有矢量图形而没有了原来的地球!

我的编译环境是随书光盘中的OSG-2.6.0-VC80SP1-Setup安装包,其中vpb是0.98。

[ 本帖最后由 口口广大 于 2009-1-8 20:25 编辑 ]
osggis3.JPG

该用户从未签到

发表于 2009-1-9 22:37:08 | 显示全部楼层
你同时读取并且叠加上去就可以了~~~~~~~

该用户从未签到

 楼主| 发表于 2009-1-9 23:48:18 | 显示全部楼层
不太理解楼上的话,请详细一点,谢谢!

该用户从未签到

 楼主| 发表于 2009-2-7 20:47:06 | 显示全部楼层
help!

该用户从未签到

发表于 2009-2-7 22:45:42 | 显示全部楼层
FlySky放假回来后才可能回答您的问题。不过我的理解是您应当把作为地形节点的earth.ive和作为矢量数据节点的new_earth.ive同时作为参数加载到osggis_viewer中。

该用户从未签到

 楼主| 发表于 2009-2-8 18:39:16 | 显示全部楼层
您好。您的意思是不是osggis_makelayer只是将shp文件制作了一个矢量数据节点(或者说一个可在osg下显示的矢量数据图层)。而osggis_viewer则才是可以把栅格地形节点和矢量数据节点迭加到一起的工具?

该用户从未签到

发表于 2009-2-8 19:47:53 | 显示全部楼层
shp通常只保存矢量和属性数据,而osgdb_shp将其记录为一个矢量数据节点。osggis应该也是运用了这个插件来完成主要的构建工作;而osggis_viewer的工作则类似于osgviewer,将这些可绘制的对象显示出来,只是添加了专用于地理数据的一些功能。

该用户从未签到

 楼主| 发表于 2009-2-8 21:29:28 | 显示全部楼层
我觉得问题还是出在osggis_makelayer --terrain earth.ive --input world.shp --output new_earth.ive --geocentric --lines --random-colors --no-lighting --gridded --grid-rows 16 --grid-colos 32 命令上,与osggis_viewer无关,

正如您所说的而osggis_viewer的工作则类似于osgviewer,只是个模型查看器。所以您所说的 “把作为地形节点的earth.ive和作为矢量数据节点的new_earth.ive同时作为参数加载到osggis_viewer中。”,我觉得不能理解。

我原来的理解是new_earth.ive已经是earth.ive(地球)+world.shp(平面国界线) 的模型,即地球加上如上图所示的球体国界线,而osggis_viewer仅仅是查看了这个模型。或者您的意思是new_earth.ive 仅仅是球体国界线,还需要通过其他一步使得new_earth.ive(球体国界线)+earth.ive(地球)=最终的含有国界线的地球?

[ 本帖最后由 口口广大 于 2009-2-8 21:41 编辑 ]

该用户从未签到

发表于 2009-2-8 21:52:03 | 显示全部楼层
地形和矢量数据应该是分开处理的吧?我个人认为您这里的new_earth.ive仅仅是国界线,显示的时候需要把earth.ive和它一起作为参数。事实上osggis_viewer的代码中也有说明的注释代码:
  1. * Make your terrain the first model you load on the command line. By default,
  2. * this utility will apply a polygon offset of (1,1) to the first model loaded.
复制代码

该用户从未签到

 楼主| 发表于 2009-2-9 19:50:30 | 显示全部楼层
正如楼上两位所说,已解决,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表