|
楼主 |
发表于 2010-5-27 09:22:01
|
显示全部楼层
本帖最后由 fqyd1987 于 2010-5-27 09:40 编辑
osg::EllipsoidModel::convertXYZToLatLongHeight我采用的这个把 hitr->getWorldIntersectPoint() 转换成经纬高的:
osg::ref_ptr<osg::EllipsoidModel> Em=new osg::EllipsoidModel;
double x,y,z;
Em->convertXYZToLatLongHeight(hitr->getWorldIntersectPoint().x(),hitr->getWorldIntersectPoint().y(),hitr->getWorldIntersectPoint().z(),lat,lon,hei)
我的方法就是把当前的经纬高通过convertLatLongHeightToXYZ转换成世界坐标,作为射线求交的起点,然后把(0.0,0.0,0.0)作为射线求交的终点,与地球节点进行求交得到交点,再转换通过convertXYZToLatLongHeight成经纬度高,高度负的不对着。。。 |
|