[发明专利]一种三维模型数据的瓦片式快速加载方法有效

专利信息
申请号: 201611104349.5 申请日: 2016-12-05
公开(公告)号: CN106600523B 公开(公告)日: 2018-03-13
发明(设计)人: 黄新;邵世维;肖立霞;刘辉;王京晶;王恒 申请(专利权)人: 武汉市国土资源和规划信息中心
主分类号: G06T1/60 分类号: G06T1/60;G06T15/00
代理公司: 武汉科皓知识产权代理事务所(特殊普通合伙)42222 代理人: 魏波
地址: 430000 *** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 三维 模型 数据 瓦片 快速 加载 方法
【权利要求书】:

1.一种三维模型数据的瓦片式快速加载方法,其特征在于,包括以下步骤:

步骤1:将三维模型数据瓦片化;

步骤2:通过八叉树技术对瓦片数据进行空间组织,建立瓦片数据的空间八叉树索引,并分离瓦片的索引部分和数据部分,实现对瓦片数据的空间组织和分离存储,映射索引部分到内存以提高查询检索的性能;

步骤3:程序等待直到发生场景变换,则执行下述步骤4;若程序退出,则本流程结束;

步骤4:计算视场的锥体裁减范围;具体实现过程是由视场角定义的上下左右四个面和由投影矩阵定义的远近剪切平面;

步骤5:根据步骤4中的锥体裁减范围确定视锥体内部的地理范围,利用瓦片LOD原理,从八叉树根节点开始遍历,判断节点所指瓦片的精细程度是否满足分辨率的要求,确定当前视锥体范围内的八叉树节点;

步骤6:按层级从低到高遍历需要加载的瓦片信息;

步骤7:对视锥体中所需瓦片依次判断瓦片的缓存状态是否为true,缓存状态为true表明该瓦片在缓存中,为false则不在缓存中;

若是true,则请求数据在缓存中,请求数据命中,直接在缓存中读取数据,并同时更新最后访问时间、存储时间、访问次数和访问状态;

若为false,则添加对该瓦片的请求到请求队列,建立子线程加载请求的数据,并将返回的数据写入缓存,并更新该瓦片索引的访问状态、缓存状态、最后访问时间、访问次数、瓦片大小、地理范围、存储时间;

步骤8:判断是否完成遍历;

若否,并回转执行上述步骤6;

若是,则绘制并刷新视图,缓存置换删除部分瓦片,进行瓦片预测并加载,同时更新预测瓦片的索引信息;并回转执行上述步骤3;

所述缓存置换删除部分瓦片,其具体实现包括以下子步骤:

步骤A.1:将缓存中的瓦片分为三类;第一类瓦片为访问过的不在视场中的瓦片,第二类瓦片为未被访问过的预缓存瓦片,第三类瓦片为视场中的正在显示的瓦片;

步骤A.2:对于第一类瓦片进行访问次数、已缓存时间、最后缓存时间,瓦片大小,与视点中心的距离的统计;使用价值函数计算缓存中第一类瓦片的数据价值V1(i),移除其中数据价值最小的三维瓦片;

V1(i)=Vspacial(i)*Vtime(i)*Vsize(i);

Vspacial(i)=1D(i);]]>

Vtime(i)=1avg_access_time(i)*last_internal(i);]]>

avg_access_time(i)=current_time-store_time(i)access_count(i);]]>

last_int ernal(i)=current_time-last_time(i);

Vsize(i)=1WDZ(i);]]>

WDZ(i)=size(i)benchmark_size+1;]]>

其中V1(i)为第一类瓦片i的数据价值,Vspacial(i)为瓦片i的空间位置价值,Vtime(i)为瓦片i的时间价值,Vsize(i)为瓦片i的数据大小价值;D(i)为瓦片的数据距离,当0≤D(i)<1时,设定D(i)=1;avg_access_time(i)为瓦片数据的平均访问间隔时间,last_int ernal(i)为瓦片的最后访问时刻与当前时刻的时间间隔;current_time为系统当前时间,store_time(i)为瓦片首次存储时间,access_count(i)为瓦片被访问次数;last_time为瓦片最后一次被访问的时间;WDZ(i)为瓦片数据的加权数据大小,size(i)为瓦片数据大小,benchmark_size为基准数据,基准数据为缓存瓦片数据的平均值;

步骤A.3:第二类瓦片则通过获取访问次数、已缓存时间、最后缓存时间,瓦片大小,并分别计算与视点中心的距离;使用价值函数计算缓存中第二类瓦片的数据价值V2(i),移除其中数据价值最小的三维瓦片;

V2(i)=Vspacial(i)*Vsize(i),其中Vspacial(i)和Vsize(i)的计算与第一类瓦片的计算方法一致;

步骤A.4:设置预缓存前的内存临界值为maxCacheCapacity1,判断当前内存缓存的容量是否大于临界值maxCacheCapacity1,如果是,释放整个内存中瓦片缓存的N%的空间,其中0<N<100,对缓存中的第一类三维瓦片数据和第二类三维瓦片数据分别按照瓦片的数据价值从低到高提出各自N%的内存占用量,直到符合内存要求。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉市国土资源和规划信息中心,未经武汉市国土资源和规划信息中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611104349.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top