查看: 2747|回复: 7

求ObjectPlacer 的示例代码

[复制链接]

该用户从未签到

发表于 2011-12-30 14:46:49 | 显示全部楼层 |阅读模式
我用了杨教授的osgMFC 框架  和 教程上生成了一个.ive的地球 并 和一些高程图 整合了一个.earth文件  并可以读取。但是 我怎么在 用 Objectplacer来往地球上加模型啊。。 自己试了一下 什么反应都没有。。

该用户从未签到

 楼主| 发表于 2012-1-6 09:24:53 | 显示全部楼层
eaglezhao 发表于 2011-12-30 19:20
objectplacer并不好,加上去模型纹理都没有了,可以用模型加载插件

我觉得 针对高效率读取速度的话 还是用ive的比较好 有人比对 读取ive是osg的10倍速度

该用户从未签到

发表于 2011-12-30 19:20:33 | 显示全部楼层
objectplacer并不好,加上去模型纹理都没有了,可以用模型加载插件

该用户从未签到

发表于 2011-12-31 18:18:11 | 显示全部楼层
我是用的FLT模型,纹理还是都在的

该用户从未签到

发表于 2011-12-31 20:31:33 | 显示全部楼层
我也是用的FLT模型,纹理没有问题,但是模型比较暗

该用户从未签到

 楼主| 发表于 2012-1-4 17:48:33 | 显示全部楼层
哈哈  这几天放假 刚上来!我解决了 挺简单的几句 现在纠结 经纬度 和 三维坐标之间的转换

该用户从未签到

发表于 2012-1-4 21:15:34 | 显示全部楼层
z7299227 发表于 2012-1-4 17:48
哈哈  这几天放假 刚上来!我解决了 挺简单的几句 现在纠结 经纬度 和 三维坐标之间的转换

怎么解决的啊 ,我加载的也是黑色的。

该用户从未签到

 楼主| 发表于 2012-1-6 09:15:05 | 显示全部楼层
rngguliu 发表于 2012-1-4 21:15
怎么解决的啊 ,我加载的也是黑色的。

我发给你代码 我的是在宁波附近加了一个模型 你看一看 就三行代码
        mModel = osgDB::readNodeFile("../xdkvpb_earth.earth");

        mRoot->addChild(mModel.get());


        osg::ref_ptr<osgEarth::MapNode> mapNode = osgEarth::MapNode::findMapNode(mModel);

        //  

        osg::ref_ptr<osg::Node> model = osgDB::readNodeFile("ceep.ive");

        //  //LOD 试点设置5000米以外看不到
        osg::ref_ptr<osg:OD> lodbuffer = new osg::LOD;

        lodbuffer->addChild(model,0,8000);

        osg::ref_ptr<osg::MatrixTransform> scale = new osg::MatrixTransform;

        scale->setMatrix(osg::Matrix::scale(2.0,2.0,2.0));
        scale->addChild(lodbuffer);

        objectPlacer=new osgEarth::Util::ObjectPlacer(mapNode, ~0, false);

    osg::ref_ptr<osg::Node> placerNode1=objectPlacer->placeNode(scale, 29.89, 122.03, 10);

    mRoot->addChild(placerNode1);
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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