如何显示大场景海量三维模型?
最近因为项目需要一直在研究world wind,之前总算把world wind wms 的服务器搭建完毕,算是迈出了第一步。紧接着就开始考虑加载三维模型的问题,world wind通过配置文件用ModelFeature实现了.x, .xml, .dae文件格式的加载。
但是ww对于大场景海量三维数据的加载、显示并没有实现。在网上、期刊网上调研了许久,发现基本上是采用分层、分块加lod的策略,遗憾的是,这些文章并没有涉及到具体的实现细节,这对于我这个第一次真枪实弹地做gis的人来说,真是蛋疼。
今天在网上瞎逛,偶遇OSGGIS,它是基于OpenSceneGraph的。OpenSceneGraph是一款高性能的3D图形开发库,貌似很牛。随后看了OSGGIS的一些资料,它能够做到:
1. 用3D模型来替换点要素;
2. 将大数据量的图层按网格组织;同时构建平行的单元格。
此外下图为网友的实现效果图,cool。(http://hi.baidu.com/lorin_hill/blog/item/225a2bf39b79971ab07ec5e8.html)
这里还有另外一个网友的介绍(http://blog.csdn.net/zhuliangxiong/archive/2009/04/21/4096189.aspx)
“图层编译器引导来自一个或者多个图层的要素穿过一个或者多个过滤器图.然后将来自于不同过滤器图的输出组合成为一个OSG场景图.osgGIS有三种内置的图层编译器:
1.简单编译器:将要素编译生成内存中的多LOD的场景图;
2.网格化编译器:将要素分成网格,然后将每个网格分别编译生成分页的多LOD场景图;
3.四叉树编译器:编译生成分页的多LOD场景图,同时每一个LOD是其上级节点的四叉树子节点;
网格化编译器和四叉树编译器可以实现增量编译和局部更新.由于每一个网格都是无关的,所以这些网格可以同时编译.这种机制使得OsgGIS具很强的伸缩性.因为使用这种增量编译和局部更新技术,OsgGIS就可以处理任意规模的数据.
OsgGIS将整个图层分解为许多小块后分别独立编译,同时OsgGIS使用Session将各个编译过程连接在一起.Session用于管理公共的资源(例如:纹理..)和对外部数据模型的引用。Session还记录有整个图层编译过程中产生的统计数据。”
呵呵,看到这些,一阵窃喜。OSGGIS值得一看。
不过终究是开源的东东,研究起来还是困难重重。一步一步来吧。
如何显示大场景海量三维模型?相关推荐
- Unity UI前显示可操控三维模型
原理:将Canvas设置为指定Camera渲染,在该Canvas上添加UI. 将Canvas组件的Render Model属性设置为Screen Space - Camera,将摄像机挂到Render ...
- Cesium教程(十四):简易三维模型的可视化
Cesium教程(十四):简易三维模型的可视化 效果预览 1.高效三维数据格式:3D Tiles 3D Tiles是Cesium提出的处理三维地理大数据的数据格式,目前已是OGC数据标准之一,并在We ...
- WebGL,Cesium以及GeoJSON数据的简单介绍
目录 一.WebGL 二.Cesium (1)Cesium:一个用于显示三维地球和地图的开源js库. (2)Cesium的基本功能: (3)cesium的依赖性与技术标准 (4)Cesium与周边产品 ...
- Mars3D(含Cesium)数据及服务篇:城市建筑物转为3DTiles白膜格式
1.城市建筑物白膜所需的shp数据介绍 在拥有如shp格式的建筑物二维面边界坐标数据,和高度或楼层数属性信息,再通过工具转换为三维立体的白膜建筑物3DTiles模型. Shapefile文件是ESRI ...
- 对比分析OSG与Cesium中模型LOD的异同
1. LOD 熟悉渲染的读者可能经常听到LOD(Level Of Detail),也就是用不同的细节层次来表达同一个对象.比如下图中的雕像,从左到右精细度越来越低,最后甚至仅剩一个轮廓,已经看不出人形 ...
- OSM地图本地发布(一)-----概述
目录 一.前言 二.开源GIS介绍 1.前端GIS框架 2.后端技术 3.空间数据库 4.地图服务器 4.GIS软件 三.技术选型 四.文章目录 1.OSM本地发布(一)-----概述 2.OSM本地 ...
- 19个三维GIS软件对比
19个三维GIS软件对比麦豆科研技术中心 2 days ago 我国GIS经过三十多年的发展,理论和技术日趋成熟,在传统二维GIS已不能满足应用需求的情况下,三维GIS应运而生,并成为GIS的重要发展 ...
- 三维地理信息平台介绍与比较(转)
Google Earth和World Wind是两款优秀的网络维地球影像浏览器,它们的出现,打破了传统Web GIS的数据发布模式,为空间信息的快速发布提供了新的解决思路和技术手段 采用这种技术,客户 ...
- 阿里为什么要拿下Flink?
关注ITValue,查看企业级市场最新鲜.最具价值的报道! 如果这不是因为阿里新年消费的第一个大单,更多人知道Flink或许还会晚一点.据欧洲外媒Deutsche Startups报道,阿里巴巴集团 ...
最新文章
- SSM项目各层单元测试
- [转]Cookie/Session机制详解
- Spring Cloud生态的配置服务器最全对比贴
- oracle 5种索引方式,MySQL使用索引的几种方式
- 使用.Net图表开发工具JDash.Net添加组件
- less命令的使用方法
- 宿迁学院的计算机系怎么样,宿迁学院是几本 学生评价怎么样好不好(10条)
- android移动应用基础教程源代码,Android移动应用基础教程 【程序活动单元Activity】...
- unity mysql增删改查,XML的使用,增删改查(Unity中的)
- 【软件测试】简述自顶向下和自底向上两种集成测试方法
- iOS开发NSDate、NSString、时间戳之间的转化
- 解决 placeholder 垂直不居中,偏上的问题
- FFmpeg实现音视频同步的精准片段拼接
- C语言编程题目(精心准备,特别适合C语言小白)
- xshell中svn命令整理
- Proteus的使用总结
- [Linux用户空间编程-5]:用IPTable实现NAT功能
- 拒绝焦虑状态:TA爱我吗?
- TeamView 无法捕捉画面问题的解决办法
- 【转载】64 位 Windows 内核虚拟地址空间布局(基于 X64 CPU)