查看: 3249|回复: 7

osgearth API编程动态建立地图的问题!

[复制链接]

该用户从未签到

发表于 2013-7-21 15:06:31 | 显示全部楼层 |阅读模式
using namespace osgEarth;
using namespace osgEarth:rivers;


int _tmain(int argc, _TCHAR* argv[])
{
        osg::ref_ptr<osgViewer::Viewer> viewer=new osgViewer::Viewer();  
        osg::ref_ptr<osg::Group> root=new osg::Group();
        Map *map=new Map;
        TMSOptions tms;
        tms.url()="E:\\osgearth\\OSG\\data\\world.tif";
        ImageLayer *layer=new ImageLayer("world",tms);
        map->addImageLayer(layer);
        MapNode* mapNode=new MapNode(map);
        viewer->setSceneData(mapNode);
        viewer->realize();  
        viewer->run();
                 return 0;
}
编译时没有错运行时就发现建立地球失败,如下图:
QQ截图20130721150601.png

该用户从未签到

 楼主| 发表于 2013-7-21 15:07:14 | 显示全部楼层
求指教啊!

该用户从未签到

 楼主| 发表于 2013-7-21 16:06:09 | 显示全部楼层
没人嘛?:(

该用户从未签到

发表于 2013-7-21 20:24:08 | 显示全部楼层
本帖最后由 xiaoping2753 于 2013-7-21 20:25 编辑

tms.url()="E:\\osgearth\\OSG\\data\\world.tif";
这就错了,tms是一种切片服务,怎么能直接用tif数据呢,你需要通过osgearth_package把tif数据切片后,访问生成的xml文件
如果你要直接用tif数据的话,要使用gdal替换tms

该用户从未签到

发表于 2013-7-22 13:28:31 | 显示全部楼层
4楼正解

该用户从未签到

 楼主| 发表于 2013-7-23 15:33:31 | 显示全部楼层
xiaoping2753 发表于 2013-7-21 20:24
tms.url()="E:\\osgearth\\OSG\\data\\world.tif";
这就错了,tms是一种切片服务,怎么能直接用tif数据呢, ...

谢谢指教啊!

该用户从未签到

发表于 2013-7-29 22:54:04 | 显示全部楼层
用GDAL库读取大的tif,可读,但性能很低,最好打包成tms库,或者处理成vpb的ive库,ive库的性能是最高的

该用户从未签到

发表于 2014-11-11 16:18:20 | 显示全部楼层
学习了,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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