一种基于地理信息的海量三维数据调度的方法_4

文档序号:9929545阅读:来源:国知局
加载的网格索引存入优先访问队列,并记录当前帧数;
加载的三维实体对象索引存入优先访问队列,并记录当前帧数。
[0047]具体实施例中所述资源请求可包括:纹理资源、模型资源、网格索引、三维实体对象索引;在对资源请求进行处理时可采取不同种类的资源请求使用不同的线程进行处理;所述资源信息与视点距离的排序可为从近及远进行排序。
[0048]如图8所示的一种基于地理信息的海量三维数据调度的方法,所述卸载数据:从内存中清除一定时间内不再使用的资源数据;
所述卸载数据的具体步骤为:
利用卸载处理线程,在一定的时间间隔检查网格索引和三维实体对象索引优先访问队列中的网格索引和三维实体对象索引是否已经长时间没有使用;
对一定时间内没有使用的网格索引和三维实体对象索引进行卸载并减少对模型资源的引用;
当模型资源不再使用时,对模型资源进行卸载并减少对纹理资源的引用;
当纹理资源不再使用时,对纹理资源进行卸载。
[0049]本发明实施例的技术与实施例1的技术相同,在此不再赘述。
[0050]由此可见:本发明实施例中的方法对海量三维数据进行了有效的组织和管理,便于数据的更新维护;通过分级网格索引和三维实体对象索引的建立,能够对海量三维数据快速地裁剪过滤;通过对模型和纹理进行分离、简化和压缩,减少了磁盘空间的使用,提高了数据资源访问的效率;通过多线程处理资源请求和资源卸载,最大限度地提升了硬件资源的使用效率,使海量三维数据的调度更加快速,使三维场景的渲染更加流畅;通过双缓冲队列处理资源请求,解决了过期节点无效加载和释放缓慢的问题。
[0051]虽然通过实施例描绘了本发明实施例,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
【主权项】
1.一种基于地理信息的海量三维数据调度的方法,其特征在于,包括如下步骤: 数据分类:将属性特征相同的三维实体对象进行分类处理; 创建索引并存储:对数据分类后的三维实体对象分别进行索弓I创建,并将创建好的索引信息进行存储; 处理三维实体对象并存储:将每个三维实体对象的模型资源进行纹理分离处理、简化处理,并将模型资源、纹理资源、属性数据进行存储; 数据裁剪、资源请求:根据网格索引和三维实体对象索引筛选出需要渲染的模型资源、纹理资源并进行资源加载请求; 处理资源请求:对不同类型资源请求进行多线程处理; 卸载数据:从内存中清除一定时间内不再使用的资源数据。2.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述该方法还包括三维数据渲染步骤,其中: 三维数据渲染:对经过裁剪调度后的海量三维地理信息数据进行渲染、展示。3.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述数据分类:将属性特征相同的三维实体对象进行分类处理; 其中,数据分类的步骤具体可为: 按照地物特征、地貌特征将三维实体对象进行分类; 将划分后的实体对象按照不同属性进行划分。4.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述创建索引并存储:对数据分类后的三维实体对象分别进行索引创建,并将创建好的索引信息进行存储; 所述创建索引并存储的具体步骤为: 将数据分类后的三维实体对象区域进行网格划分,并将网格进行编码; 根据三维实体对象的空间范围,把三维实体对象划分到唯一的网格中,记录每个三维实体对象的索引信息; 根据网格内三维实体对象的索引信息更新各级网格的索引信息; 对网格索引信息、三维实体对象索弓I信息进行存储。5.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述处理三维实体对象并存储:将每个三维实体对象的模型资源进行纹理分离处理、简化处理,并将模型资源、纹理资源、属性数据进行存储; 所述处理三维实体对象并存储的具体步骤为: 提取每个三维实体对象的模型资源和属性数据; 将模型资源转换为渲染平台支持的资源格式; 将纹理资源从模型资源中分离; 对模型资源及其纹理资源进行简化处理; 对原始模型及其纹理和简化模型及其纹理进行压缩处理; 分别存储原始模型及其纹理和简化模型及其纹理,相同的模型、纹理只存储一次; 存储三维实体对象的属性数据。6.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于所述数据裁剪、资源请求:根据网格索引和三维实体对象索引筛选出需要渲染的模型资源、纹理资源并进行资源加载请求; 所述数据裁剪、资源请求的具体步骤为: 根据视点范围、网格索引信息进行网格逐级裁剪; 对在可显示范围内而没有加载的网格索引进行加载请求; 裁剪到最后一级网格索引后,判断网格索引内的三维实体对象索引是否已加载; 将没有加载的三维实体对象索引进行加载请求; 根据视点范围、已加载的三维实体对象索引进行三维实体对象裁剪; 判断三维实体对象是否需要加载,将需要加载的三维实体对象的模型资源进行加载请求; 将加载的三维实体对象进行遮挡查询,将不被遮挡的三维实体对象的模型资源进行渲染处理,并更新该三维实体对象索引及其所在的各级网格索引的当前使用帧数; 在渲染处理过程中如果纹理资源未被加载,将需要加载的纹理资源进行加载请求。7.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于所述处理资源请求:对不同类型资源请求进行多线程处理; 所述处理资源请求的具体步骤为: 清空处理资源请求的队列; 将接收资源请求的队列与处理资源请求的队列进行交换; 将处理资源请求的队列根据资源信息与视点的距离进行排序; 对处理资源请求队列中的资源请求进行加载处理; 加载的网格索引存入优先访问队列,并记录当前帧数; 加载的三维实体对象索引存入优先访问队列,并记录当前帧数。8.根据权利要求1、7所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述资源请求可包括:纹理资源、模型资源、网格索引、三维实体对象索引;在对资源请求进行处理时可采取不同种类的资源请求使用不同的线程进行处理;所述资源信息与视点距离的排序可为从近及远进行排序。9.根据权利要求1所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述卸载数据:从内存中清除一定时间内不再使用的资源数据; 所述卸载数据的具体步骤为: 利用卸载处理线程,在一定的时间间隔检查网格索引和三维实体对象索引优先访问队列中的网格索引和三维实体对象索引是否已经长时间没有使用; 对一定时间内没有使用的网格索引和三维实体对象索引进行卸载并减少对模型资源的引用; 当模型资源不再使用时,对模型资源进行卸载并减少对纹理资源的引用; 当纹理资源不再使用时,对纹理资源进行卸载。10.根据权利要求1、4所述的一种基于地理信息的海量三维数据调度的方法,其特征在于,所述网格大小可进行指定,网格级数也可指定;所述存储的格式可为文件格式、数据库格式。
【专利摘要】本发明公开了一种基于地理信息的海量三维数据调度的方法,涉及地理信息处理和应用技术领域,其特征在于该方法包括如下步骤:数据分类、创建索引并存储、处理三维实体对象并存储、数据裁剪、资源请求、处理资源请求、卸载数据。本发明实施例中的方法对海量三维数据进行了有效的组织和管理,便于数据的更新维护;能够对海量三维数据快速地裁剪过滤;减少了磁盘空间的使用,提高了数据资源访问的效率;最大限度地提升了硬件资源的使用效率,使海量三维数据的调度更加快速,使三维场景的渲染更加流畅;解决了过期节点无效加载和释放缓慢的问题。
【IPC分类】G06T15/00, G06F17/30
【公开号】CN105718480
【申请号】CN201410731278
【发明人】高健, 沈迎志, 江贻芳, 蔡红, 沈美岑, 周新鹤, 辛全波, 王梦
【申请人】星际空间(天津)科技发展有限公司
【公开日】2016年6月29日
【申请日】2014年12月5日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1