查看: 3004|回复: 4

大量点云组织PagedLod和四叉树优化问题

[复制链接]

该用户从未签到

发表于 2014-5-7 22:22:33 | 显示全部楼层 |阅读模式
本帖最后由 tanhw 于 2014-5-8 09:09 编辑

有大量点云需要显示, 按照pagedlod及四叉树方式进行组织, 组织方式如下图所示。 node0是点云按照100分之一抽稀后的点, node1-node4是按照20分之一抽稀后划分的四块,   node1-1,node1-2,node1-3,node1-4是其中一块划分的未抽稀的点, 程序如下:
osg::Group * root=new osg::Group;
osg::Group * models=new osg::Group;
root->addChild(models);

osg::ref_ptr<osg:agedLOD> lod=new osg::PagedLOD;  
lod->setFileName(0,"node0.osg");
lod->setRange(0,100000,10000000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node1.osg");
lod->setRange(0,1000,100000);
models->addChild(lod1);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node2.osg");
lod->setRange(0,1000,100000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node3.osg");
lod->setRange(0,1000,100000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node4.osg");
lod->setRange(0,1000,100000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node1-1.osg");
lod->setRange(0,0,1000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node1-2.osg");
lod->setRange(0,0,1000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node1-3.osg");
lod->setRange(0,0,1000);
models->addChild(lod);

lod=new osg::PagedLOD;  
lod->setFileName(0,"node1-4.osg");
lod->setRange(0,0,1000);
models->addChild(lod);

node2-1.osg
node2-2.osg
node2-3.osg
node2-4.osg
。。。



图可以正常显示,请教:这么组织对吗?疑问是node1和node1-1,node1-2,node1-3,node1-4之间好像没建立联系,当node1范围在0,1000比例下时是不是会除了遍历node1-1,node1-2,node1-3,node1-4外还会遍历所有的点?

node.png
table.png

该用户从未签到

 楼主| 发表于 2014-5-12 12:33:25 | 显示全部楼层
tanhw 发表于 2014-5-9 13:41
没有人回答, 自己顶一下

没有人回答, 自己弄出来了.

发现一个问题, 就是每个PagedLOD没有设置中心点,setcenter
设置以后加载范围就正确了, 速度有相当大的提升.

该用户从未签到

 楼主| 发表于 2014-5-8 14:24:20 | 显示全部楼层
问题补充:
      我在node4范围内浏览时, 我发现在加载node1-1这个级别的所有文件. 四叉树没发挥作用.

该用户从未签到

 楼主| 发表于 2014-5-9 13:41:43 | 显示全部楼层
没有人回答, 自己顶一下

该用户从未签到

发表于 2014-7-9 09:22:25 | 显示全部楼层
疑问是node1和node1-1,node1-2,node1-3,node1-4之间好像没建立联系 ,这个是怎么解决的呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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