最近因为项目需要一直在研究world windの前总算把world wind wms 的服务器搭建完毕,算是迈出了第一步紧接着就开始考虑加载三维模型的问题,world wind通过配置文件用ModelFeature实现了.x, .xml, .dae文件格式的加载
但昰ww对于大场景海量三维数据的加载、显示并没有实现。在网上、期刊网上调研了许久发现基本上是采用分层、分块加lod的策略,遗憾的是这些文章并没有涉及到具体的实现细节,这对于我这个第一次真枪实弹地做gis的人来说真是蛋疼。
今天在网上瞎逛偶遇OSGGIS,它是基于OpenSceneGraph的OpenSceneGraph是一款高性能的3D图形开发库,貌似很牛随后看了OSGGIS的一些资料,它能够做到:
2. 将大数据量的图层按网格组织;同时构建平行的单元格
此外下图为网友的实现效果图,cool()
这里还有另外一个网友的介绍()
“图层编译器引导来自一个或者多个图层的要素穿过一个或者多个過滤器图.然后将来自于不同过滤器图的输出组合成为一个OSG场景图.osgGIS有三种内置的图层编译器:
1.简单编译器:将要素编译生成内存中的多LOD的场景图;
2.網格化编译器:将要素分成网格,然后将每个网格分别编译生成分页的多LOD场景图;
3.四叉树编译器:编译生成分页的多LOD场景图,同时每一个LOD是其上级节點的四叉树子节点;
网格化编译器和四叉树编译器可以实现增量编译和局部更新.由于每一个网格都是无关的,所以这些网格可以同时编译.这种機制使得OsgGIS具很强的伸缩性.因为使用这种增量编译和局部更新技术,OsgGIS就可以处理任意规模的数据.
OsgGIS将整个图层分解为许多小块后分别独立编译,同時OsgGIS使用Session将各个编译过程连接在一起.Session用于管理公共的资源(例如:纹理..)和对外部数据模型的引用。Session还记录有整个图层编译过程中产生的统计数据”
呵呵,看到这些一阵窃喜。OSGGIS值得一看
不过终究是开源的东东,研究起来还是困难重重一步一步来吧。