查看: 1450|回复: 6

怎么求空间中某点的垂直向上的向量

[复制链接]

该用户从未签到

发表于 2014-3-27 10:38:00 | 显示全部楼层 |阅读模式
                如题,怎么求空间中任意一点,垂直于地面向上的向量?
                网上有人说:计算地球上任意点的UP方向使用osgAPEx::ComputeLocalUpVector。
                但是,我怎么找不到osgAPEx这个库。。。。
求大神帮帮忙,谢谢。
  • TA的每日心情
    开心
    2019-11-11 10:36
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2014-3-27 12:18:36 | 显示全部楼层
    你说的是在osgEarth上吗?是UTM还是geocentric,问题没有问清楚。

    该用户从未签到

     楼主| 发表于 2014-3-27 13:41:44 | 显示全部楼层
    FreeSouth 发表于 2014-3-27 12:18
    你说的是在osgEarth上吗?是UTM还是geocentric,问题没有问清楚。

            在osgearth上吧,我是想弄一架飞机在earth上飞,然后做一个方向标之类的东西
            这个方向标始终指向垂直地面竖直向上的方向,
    还有就是到底有没有osgAPEx这个库啊,
    求free大神指导指导,谢谢了

    该用户从未签到

    发表于 2014-3-27 17:01:07 | 显示全部楼层
    向上向量不永远是(0,0,1)么?没明白你意思

    该用户从未签到

    发表于 2014-3-27 17:20:30 | 显示全部楼层
    你说的是哪个空间?世界?屏幕?

    该用户从未签到

    发表于 2014-3-27 17:57:51 | 显示全部楼层
    本帖最后由 VR_user_happy 于 2014-3-27 18:01 编辑
    UpNico 发表于 2014-3-27 17:20
    你说的是哪个空间?世界?屏幕?


    当前物体的坐标P(X,Y,Z),地球中心点坐标O(0.0,0.0,0.0),可近似为大的球体中心;
    如果考虑是椭球体,准确点:你就得求得椭球的2个偏向中心作为作为O点;查下椭圆计算就可求得!

    向量PO=osg::Vec3(X,Y,Z)-osg::Vec3(0.0,0.0,0.0);

    单位向量化PO就是地球表面物体的垂直向量;


    另可以参看osg::EllipsoidModel的类函数:
    computeLocalUpVector()估计就是你要的向上的向量吧!

    该用户从未签到

     楼主| 发表于 2014-3-28 08:47:56 | 显示全部楼层
    谢谢各位,happy兄说的那个函数应该就是我要找的
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

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

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

    联系我们

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