查看: 3960|回复: 8

关于vpb生成的dem地型坐标系在osg中显示的问题

[复制链接]

该用户从未签到

发表于 2008-12-26 20:40:20 | 显示全部楼层 |阅读模式
某dem地型数据如下图






其中经纬度100~119,纬度29~40,


利用osgdem -t --xx 10  --yy 10  test-t.tif --xx 10  --yy 10 -d test-h.tif -l 1 -v 0.1 -a test.osga 命令生成osga模型有误,应该是--xx 10  --yy 10 参数设置不对,也不知道该用多大的象素值。

改为默认参数 osgdem -t test-t.tif  -d test-h.tif -l 1 -v 0.1 -a test.osga  生成的地形没有问题,如图2。

其在osg中显示的坐标系范围即为其经纬度范围:x:100~119,y:29~40,问题是这种坐标系数值范围太小,叠加在地形上的其他模型都必须要缩小很多倍,请问如何将该地形的屏幕坐标值扩大1000倍,即x:100000~119000,y:29000~y40000

[ 本帖最后由 口口广大 于 2008-12-26 20:51 编辑 ]
vpb1.JPG
vpb2.JPG

该用户从未签到

 楼主| 发表于 2008-12-26 20:52:55 | 显示全部楼层
图2中 mouse in world是世界坐标系的值,camera info是屏幕坐标系的值,两者一样。如何将 屏幕坐标系扩大?

该用户从未签到

发表于 2008-12-27 12:16:08 | 显示全部楼层
你可以用osg:ositionAttitudeTransform来进行缩放~~~~~~~~

该用户从未签到

 楼主| 发表于 2008-12-27 17:57:07 | 显示全部楼层
原帖由 klch0623 于 2008-12-27 11:05 发表
请问楼主,您的经纬度怎么加上去的?是DEM数据自带的还是自己处理过的?谢谢!

DEM数据自带

该用户从未签到

 楼主| 发表于 2008-12-27 17:59:02 | 显示全部楼层
原帖由 FlySky 于 2008-12-27 12:16 发表
你可以用osg:ositionAttitudeTransform来进行缩放~~~~~~~~

谢谢,我以前尝试用

osg::MatrixTransform* positioned = new osg::MatrixTransform;
positioned->setDataVariance(osg::Object::STATIC);
positioned->setMatrix(osg::Matrix::translate(this->TerrainCenter)*osg::Matrix::scale(1000,1000,1000));
positioned->addChild(TerrainNode.get());

这种方式缩放,不知为何没有效果

osg::MatrixTransform 和 osg::positionAttitudeTransform 的区别还不是弄得很清楚,请区分一下,谢谢!

[ 本帖最后由 口口广大 于 2008-12-27 18:00 编辑 ]

该用户从未签到

 楼主| 发表于 2008-12-30 19:28:16 | 显示全部楼层
已解决,谢谢!

该用户从未签到

发表于 2009-1-1 15:49:09 | 显示全部楼层
这个还是需要参照的,,,,这个跟物理的速度是一样的~~~~~~osg::MatrixTransform 和 osg::positionAttitudeTransform ,,,两者之间,,,一个是使用矩阵变换,,,另一个使用三维数组来控制位置,,四元数来控制姿态,,,两者合理的使用可以达到相同的效果~~~~~~~~

该用户从未签到

发表于 2017-12-21 10:15:48 | 显示全部楼层
楼主,你的问题是如何解决的,我也碰到这样的问题了,能够告知一下,非常感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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