OSG中獲取視點的世界座標

OSG中獲取視點的世界座標:

1)osg::Vec3 vPosEye, vCenter, vUp;

     cameraMaster->getViewMatrixAsLookAt( vPosEye, vCenter, vUp);//獲取世界座標系下的視點值

(2)//主相機

           osg::ref_ptr<osg::Camera> cameraMaster = viewer->getCamera();

 

           osg::Matrix _inverseMV;

           _inverseMV.invert( cameraMaster->getViewMatrix());

           osg::Vec3 ptEye= osg::Vec3(  0, 0, 0) * _inverseMV;

/*獲取世界座標系下的視點座標:世界座標系中某點Pworld在視點座標系中爲Pview,則Pview= Pworld * MV。則Pworld=Pview * MV逆,則視點座標系下的視點(0,0,0)在世界座標系下爲:ptEye=(0,0,0)* MV逆。*/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章