查看: 1229|回复: 1

projected与geocentric切换时的问题

[复制链接]

该用户从未签到

发表于 2013-3-29 19:25:08 | 显示全部楼层 |阅读模式
normal_sphere.png error_sphere.png
我想在同一视图下做两个坐标系统下场景的转换,基础的就是通过加载earth文件,两个文件除了type类型不同(geocentric和projected)外,其他都一样。我尝试了两种方法,第一种方法是公用一个osg对象和一个绘制线程,通过两个节点分别接收两个earth文件来构建mapnode,然后通过mViewer->getSceneData(mapnode)的方式来控制在视图区域显示哪种坐标系。第二种方式是同一时间osg对象的root节点里只有一个mapnode节点,当需要切换时就把当前的osg对象析构掉,并终止绘制线程。然后再重新new一个osg对象,初始化加载文件后再新建绘制线程。不论哪种方式,一旦通过readnode读取了类型为projected的earth文件,之后再切换回球面时都会出现下面显示错误。而如果两个earth文件都选择geocentric方式,则绘制没问题。我的疑问是这个type除了对节点有影响外,是不是还会影响mViewer、camera以及manipulator等变量?估计简单的析构掉osg对象并不能切断所有变量与视图、文档和框架的关系,所以导致出现错误,但是我不能确定具体的原因。请问哪位可以帮我分析一下,觉得问题会是出现在哪儿呢?谢谢大家了。

该用户从未签到

发表于 2013-4-17 18:20:46 来自手机 | 显示全部楼层
两个mapNode,按需切换显示或许可以解决您的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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