[发明专利]一种三维地理信息系统实时绘制多线程分配与控制方法在审
| 申请号: | 201510684085.4 | 申请日: | 2015-10-20 |
| 公开(公告)号: | CN105261066A | 公开(公告)日: | 2016-01-20 |
| 发明(设计)人: | 周东波;钟正 | 申请(专利权)人: | 华中师范大学 |
| 主分类号: | G06T17/05 | 分类号: | G06T17/05;G06T1/20 |
| 代理公司: | 华中科技大学专利中心 42201 | 代理人: | 廖盈春 |
| 地址: | 430079 *** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 三维 地理信息系统 实时 绘制 多线程 分配 控制 方法 | ||
1.一种三维地理信息系统实时绘制多线程分配与控制方法,其特征在于,包括如下步骤:
(1)读取三维城市数据文件,从中解析出目标对象,提取出每个目标对象的几何部分和纹理部分,计算每个目标对象包含的几何数据量与纹理数据量;
(2)对每一个目标对象,计算其空间包围盒,并创建场景管理节点对象,将空间包围盒作为场景管理节点对象的几何特征,将几何数据量和纹理数据量作为场景管理节点对象的属性;计算场景管理节点对象的数据加载代价因子和图元绘制代价因子;
(3)获取场景管理节点对象的整体空间范围,构建三维城市模型,使用k-d树空间索引方法由上至下对三维城市模型进行空间剖分,得到k-d树空间索引;其中,叶节点的生成规则为:使每个叶节点的总代价因子小于阈值;
(4)先序遍历k-d树空间索引,将叶节点的数据加载代价因子、图元绘制代价因子和总代价因子分别累加到上一层中间节点,得到中间节点的数据加载代价因子、图元绘制代价因子和总代价因子;将每个叶节点内所有场景管理节点对象的数据作为一个整体生成几何存储数据块和纹理存储数据块后,分别写入几何映射文件和纹理映射文件;
(5)将空间索引构单独生成空间索引文件,加载空间索引文件,获取可视视点的位置并计算可视区域,将可视区域与k-d树空间索引求交,获取当前位置下的可见节点;根据可见的中间节点的数据加载代价因子及存储硬件参数计算其数据加载代价,根据可见的叶节点的图元绘制代价因子及图形绘制硬件参数计算其图元绘制代价;分别根据可见的中间节点的数据加载代价和可见的叶节点的图元绘制代价生成加载列表和绘制列表;
(6)建立CPU线程池,根据实时绘制帧率的时间要求和可见的中间节点的加载代价,计算加载列表中需要设置的加载线程数量,从CPU线程池中分配加载线程进行数据加载;从几何映射文件和纹理映射文件中提取可见的叶节点的几何数据和纹理数据,解析出可见的叶节点的图元数量,根据可见的叶节点的图元绘制代价,建立GPU处理内核线程管理对象,动态分配内核处理线程数量;
(7)实时监测帧内数据加载和图元绘制加载用时t1以及绘制用时t2,在帧内加载绘制用时t1+t2大于帧率时间时,强制中断当前帧内的加载与绘制,确保当前帧率的稳定,并利用相邻帧的结余时间动态调整帧间加载线程和绘制内核线程,最终实现帧间平稳绘制。
2.如权利要求1所述的三维地理信息系统实时绘制多线程分配与控制方法,其特征在于,所述步骤(1)中,读取三维城市数据文件,从中解析出实体对象,根据城市三维建模技术规范对实体对象进行分类,将建筑物、道路、管线和其它设施四类实体对象作为目标对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中师范大学,未经华中师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510684085.4/1.html,转载请声明来源钻瓜专利网。





