查看: 2715|回复: 3

osgearth坐标转换问题

[复制链接]

该用户从未签到

发表于 2015-9-2 21:01:32 | 显示全部楼层 |阅读模式
我加载了一个地球节点,然后用pick函数计算了鼠标与地球的交点,并运用converXYZtoLonLatHeight()函数将xyz坐标转换为经纬度进行显示。功能是没问题,但是在做的过程中却有些许疑团:

1)获得交点后,可以求交点的世界坐标和局部坐标,这里的世界坐标是怎么定义的呢?是将原点设在地球中心的空间直角坐标吗?世界坐标不应该是osg中默认的x轴向右,y垂直于屏幕向里,z轴向屏幕上方吗?

2)这个局部坐标又是怎么定义的呢?原点在哪?

3)computeLocalToWorldTransformFromXYZ()这个函数中的XYZ算是地球模型的局部坐标呢还是osg的世界坐标呢?

该用户从未签到

发表于 2015-10-27 14:45:30 | 显示全部楼层
帮忙定一下,也是自己迷惑的

该用户从未签到

 楼主| 发表于 2015-12-10 22:50:33 | 显示全部楼层
apple 发表于 2015-10-27 14:45
帮忙定一下,也是自己迷惑的

oe中的世界坐标系原点在地球中心,x轴向右(指向本初子午面),y轴向屏幕里,z向上,也就是说这里的世界坐标系就是地球空间直角坐标系。所以地球初始显示的时候,正对屏幕的是西半球。

该用户从未签到

发表于 2016-10-6 09:55:53 | 显示全部楼层
楼主说的是正解,局部坐标是指以被选取节点为原点的,坐标轴的方向的定义同世界坐标。

我最近在做飞机实体文字标签的显示,需要标签实时显示经纬高、速度航向等信息,并且支持鼠标拖拽标签到任意位置功能。
其中需要反复使用坐标转换,如:局部->世界,世界->屏幕, 屏幕->局部,世界-经纬高
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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