查看: 2145|回复: 5

求助:如何将圆柱体放入地形数据中的指定了经纬度的点上?

[复制链接]

该用户从未签到

发表于 2009-3-13 10:48:00 | 显示全部楼层 |阅读模式
程序功能是打算将半径为50m,高度100m的圆柱体(geo.flt)放入地形数据(good.ive)中的指定经纬度(41.765N,87.421E),可是将地形数据(good.ive)和圆柱体同时载入后,只能看见圆柱体,而看不见地形。看以往的帖子,将圆柱体缩放后,还是看不见地形。

问题:
  1  将指定经纬度转换为xyz值中的       
  emNode->convertLatLongHeightToXYZ(osg:egreesToRadians(41.765),osg::DegreesToRadians(87.421),1223.0,v_x,v_y,v_z );
v_x=214391.878  v_y=4760511.617   v_z=4226985.352这些值是什么意思?

2          scaleNode ->setMatrix(osg::Matrix::scale(.00001, .00001, .00001)) ;
        scaleNode ->addChild(cyNode.get()) ;
        将圆柱体缩小后,为什么还是不能同时看见地形数据和圆柱体。

3 给地形节点创建了包围球,其参数为什么如此小?  怎样和圆柱体匹配?

        //获得节点的范围盒
        const osg::BoundingSphere& bs = csNode->getBound();

        _center[3]= 87.485565 41.723309 0.0070105195
        _radius=0.46587372
4 该如何实现将模型数据载入地形数据中,具体要注意些什么问题?

谢谢!

数据和程序.rar

65.15 KB, 下载次数: 192, 下载积分: 威望 1

该用户从未签到

发表于 2009-3-13 12:18:50 | 显示全部楼层
这个你可以先拾取一下你的地形的坐标范围~~注意X,Y,Z的值~~~然后应该调整位置及缩放比就可以了

该用户从未签到

 楼主| 发表于 2009-3-13 15:33:40 | 显示全部楼层
谢谢FlySky,

将地形数据的左上角和右下角的经纬度、高度值转换为xyz值后,是调整camera的比例和位置不? 如何设置,能否说的详细点?

谢谢!

该用户从未签到

发表于 2009-3-13 21:23:44 | 显示全部楼层
首先你得确定你的地形到底是什么坐标系~~统一坐标系,然后再调整合适的位置及比例就行了,,,这个也是我为什么要你pick一下你的地形文件的顶点,,,可以方便出坐标~~~~~~

该用户从未签到

 楼主| 发表于 2009-3-14 14:06:11 | 显示全部楼层
地形数据的坐标系采用的是WGS84,根据经纬度将地形数据的四个点的值转换为xyz了,请问如何调整比例和位置?  谢谢!

该用户从未签到

发表于 2011-7-14 21:28:53 | 显示全部楼层
我做了pick试了一下,竟然发现四个角的坐标和这个地形的经纬度相符合,也就是连convertLatLongHeightToXYZ都不用了,试了一下,直接把经纬度的信息给位置变换节点,果然可以。不过,我又不解了,这是为什么会出现这种现象呢?我把高程图进行了坐标映射,影像也进行了坐标校正(不进行这两步生成不了地形或者生成的不能看)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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