一种海量3d模型分区控制加载方法及装置与流程

文档序号:32438737发布日期:2022-12-06 20:29阅读:43来源:国知局
一种海量3d模型分区控制加载方法及装置与流程

1.本发明涉及3d模型加载领域,尤其是涉及一种海量3d模型分区控制加载方法及装置。


背景技术:

2.随着数据可视化普及,尤其三维效果呈现得到越来越多的市场认可,其中3d模型加载与呈现成为核心要点。而由于web端的性能限制,导致超大规模场景加载成为很多项目的难点和技术瓶颈,甚至成为三维数据可视化发展的限制之一。
3.倾斜摄影模型(即osgb倾斜摄影:osgb是倾斜摄影的格式,是一个开源的三维引擎openscenegraph的二进制场景数据,是3d模型的其中一种)作为实景场景呈现主要手段之一,可以一比一还原现实真实场景,达到最大程度拟真。对公安,消防,乃至军队等相关领域可以提供真实有效指挥决策帮助。
4.但是目前倾斜摄影模型加载普遍存在一个明显性能问题和性能瓶颈,当加载较大文件的倾斜摄影模型(倾斜摄影模型目前主流是一个城区或者大型园区为单位分割,导致文件体量巨大)时候,就会出现加载时间过长,响应缓慢,操作卡顿等一系列性能问题,导致很多项目方案只能向规模大小妥协,导致加载场景很小,不能完整呈现用户关注的整个片区直观情况,不利于提高较大文件的倾斜摄影模型的加载效率。


技术实现要素:

5.本发明为了解决现有技术中存在的问题,创新提出了一种海量3d模型分区控制加载方法及装置,有效解决由于现有技术造成加载较大文件的倾斜摄影模型时候,就会出现加载时间过长,响应缓慢,操作卡顿等一系列性能问题,有效地提高较大文件的倾斜摄影模型的加载效率。
6.本发明第一方面提供了一种海量3d模型分区控制加载方法,包括:
7.对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号;
8.依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号;
9.建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系;
10.根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型。
11.可选地,对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号具体是:
12.将倾斜摄影数据分割多个均等大小的倾斜摄影模型,并以预设编号规则按顺序赋予分割后的多个倾斜摄影模型编号。
13.进一步地,将倾斜摄影数据分割多个均等大小的倾斜摄影模型具体是:根据倾斜摄影数据文件大小、加载设备性能与倾斜摄影模型数量的对应关系,将倾斜摄影数据分割
对应数量的均等大小的倾斜摄影模型。
14.可选地,依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号具体包括:
15.获取用户打开地图页面后当前屏幕视野范围;
16.获取用户输入的地图缩放等级,根据用户输入的地图缩放等级,确定当前屏幕视野范围内地图瓦片的全部数量;
17.根据当前屏幕视野范围左上角和右下角经纬度坐标、当前屏幕视野范围内地图瓦片的全部数量、地图瓦片编号预设排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号以及每个地图瓦片对应的经纬度坐标范围。
18.可选地,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系具体是:
19.获取用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号;
20.根据倾斜摄影模型中心点坐标与每个地图瓦片对应的经纬度坐标范围之间的对应关系,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系。
21.可选地,还包括:
22.当用户移动拖拽地图时候,动态更新用户当前屏幕视野范围内全部地图瓦片编号,动态更新用户当前屏幕视野范围内全部地图瓦片编号具体包括:新增瓦片编号信息和脱离屏幕区域预设距离后清除瓦片编号信息。
23.进一步地,在动态更新用户当前屏幕视野范围内全部地图瓦片编号的过程中,生成至少三个暂存区域,第一暂存区域用于存储当前屏幕视野范围内已加载地图瓦片编号信息,第二暂存区域用于存储当前屏幕视野范围内待新增地图瓦片编号信息,第三暂存区域用于存储当前屏幕视野范围内待删除地图瓦片编号信息。
24.进一步地,还包括:
25.根据第二暂存区域存储的待新增地图瓦片编号信息动态加载对应的倾斜摄影模型。
26.可选地,还包括:
27.根据第三暂存区域存储的待删除地图瓦片编号信息,比对待删除地图瓦片编号信息对应的倾斜摄影模型当前是否已加载完成,如果满足预设删除条件,清除待删除地图瓦片编号信息,并删除对应倾斜摄影模型;其中,预设删除条件包括但不限于:倾斜摄影模型加载不显示、倾斜摄影模型资源无法加载、倾斜摄影模型资源损坏。
28.本发明第二方面提供了一种海量3d模型分区控制加载装置,包括:
29.预处理模块,对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号;
30.获得模块,依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号;
31.建立模块,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系;
32.加载模块,根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影
模型。
33.本发明采用的技术方案包括以下技术效果:
34.1、本发明对倾斜摄影数据进行预处理(均匀分割),获得多个倾斜摄影模型的编号;根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型,有效解决由于现有技术造成加载较大文件的倾斜摄影模型时候,就会出现加载时间过长,响应缓慢,操作卡顿等一系列性能问题,有效地提高较大文件的倾斜摄影模型的加载效率。
35.2、本发明技术方案中将倾斜摄影数据分割多个均等大小的倾斜摄影模型具体是:根据倾斜摄影数据文件大小、加载设备性能与倾斜摄影模型数量的对应关系,将倾斜摄影数据分割对应数量的均等大小的倾斜摄影模型,使得用户可以根据倾斜摄影数据文件大小以及自身设备性能情况,自定义分割后倾斜摄影模型的数量,提高了倾斜摄影数据分割的适应性。
36.3、本发明技术方案中当用户移动拖拽地图时候,动态更新用户当前屏幕视野范围内全部地图瓦片编号,动态更新用户当前屏幕视野范围内全部地图瓦片编号具体包括:新增瓦片编号信息和脱离屏幕区域预设距离后清除瓦片编号信息,使得地图瓦片编号与用户当前屏幕视野范围实时对应。
37.4、本发明技术方案中根据第三暂存区域存储的待删除地图瓦片编号信息,比对待删除地图瓦片编号信息对应的倾斜摄影模型当前是否已加载完成,如果满足预设删除条件,清除待删除地图瓦片编号信息,并删除对应倾斜摄影模型;其中,预设删除条件包括但不限于:倾斜摄影模型加载不显示、倾斜摄影模型资源无法加载、倾斜摄影模型资源损坏,能够根据动态更新后待删除地图瓦片编号信息,清除待删除地图瓦片编号信息以及对应倾斜摄影模型,不仅可以节省存储空间,而且还可以避免因为加载已删除地图瓦片编号信息对应的倾斜摄影模型,导致加载效率变慢,进一步地提高较大文件的倾斜摄影模型的加载效率。
38.应当理解的是以上的一般描述以及后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
39.为了更清楚说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见的,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1为本发明方案中实施例一方法的流程示意图(一);
41.图2为本发明方案中实施例一方法中步骤s2的流程示意图;
42.图3为本发明方案中实施例一方法中步骤s3的流程示意图;
43.图4为本发明方案中实施例一方法的流程示意图(二);
44.图5为本发明方案中实施例一方法的流程示意图(三);
45.图6为本发明方案中实施例一方法的流程示意图(四);
46.图7为本发明方案中实施例一方法中倾斜摄影模型初始加载(举例说明)流程图;
47.图8为本发明方案中实施例一方法中倾斜摄影模型完整动态加载和清除(举例说
明)流程图;
48.图9为本发明方案中实施例二装置的结构示意图。
具体实施方式
49.为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
50.实施例一
51.如图1所示,本发明提供了一种海量3d模型分区控制加载方法,包括:
52.s1,对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号;
53.s2,依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号;
54.s3,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系;
55.s4,根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型。
56.其中,在步骤s1中,对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号具体是:
57.将倾斜摄影数据分割多个均等大小的倾斜摄影模型,并以预设编号规则按顺序赋予分割后的多个倾斜摄影模型编号。具体地,倾斜摄影模型目前主流是一个城区或者大型园区为单位分割,导致文件体量巨大,加载缓慢,本发明技术方案针对倾斜摄影数据专门处理分割成长宽均为500m(举例说明,可以根据实际情况调整)为单位大小,并以固定规律按顺序(例如,从左往右,从上往下)赋予编号,分割成几千块不超过300mb(举例说明,可以根据实际情况调整)均等大小的倾斜摄影模型。
58.进一步地,可以根据倾斜摄影数据文件大小、加载设备性能与倾斜摄影模型数量的对应关系(可以预先设置在数据库中,也可以是其他方式),将倾斜摄影数据分割对应数量的均等大小的倾斜摄影模型。
59.其中,如图2所示,步骤s2中,依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号具体包括:
60.s21,获取用户打开地图页面后当前屏幕视野范围;
61.s22,获取用户输入的地图缩放等级,根据用户输入的地图缩放等级,确定当前屏幕视野范围内地图瓦片的全部数量;
62.s23,根据当前屏幕视野范围左上角和右下角经纬度坐标、当前屏幕视野范围内地图瓦片的全部数量、地图瓦片编号预设排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号以及每个地图瓦片对应的经纬度坐标范围。
63.其中,在步骤s21-s23中,当用户打开地图页面后,将会首先进行地图监听,获取用
户当前屏幕视野范围,即根据屏幕左上角和右下角经纬度坐标获取当前视野范围,由此得到的视野范围便是即将加载多个倾斜摄影拼接组合的范围。
64.然后获取用户输入的地图缩放等级,根据用户输入的地图缩放等级,确定当前屏幕视野范围内地图瓦片的全部数量,例如,用户输入的地图缩放等级为16级,则当前屏幕视野范围内地图瓦片的全部数量为:(2^16(即每行瓦片数量))*(2^16(即每列瓦片数量))。
65.再根据当前屏幕视野范围内地图瓦片的全部数量确定地图瓦片行列号,根据当前屏幕视野范围内地图瓦片的行列号、地图瓦片编号排序规则(即地图左上角原点0_0为起点,到右下角顺序排列),即可确定当前屏幕视野范围内所有地图瓦片编号,其中,一种编号方式可以是以地图瓦片的行列号作为编号,例如,编号数组可以是:地图缩放等级,地图瓦片所在行号(0~行数量-1)、地图瓦片所在列号(0~列数量-1),作为当前屏幕视野范围内所有地图瓦片编号,例如,某一地图瓦片编号为(16,1,6);也可以根据墨卡托公式进行编号,本发明在此不做限制。
66.然后,根据地图瓦片的数量以及当前屏幕视野范围左上角和右下角经纬度坐标,确定每个地图瓦片对应的经纬度坐标范围(每个地图瓦片的大小相同),即每个地图瓦片左上角和右下角经纬度坐标,以便于后续用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系的建立。
67.其中,如图3所示,步骤s3中,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系具体是:
68.s31,获取用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号;
69.s32,根据倾斜摄影模型中心点坐标与每个地图瓦片对应的经纬度坐标范围之间的对应关系,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系。
70.其中,在步骤s31-s32中,根据倾斜摄影模型中心点坐标与步骤s2中确定的每个地图瓦片对应的经纬度坐标范围之间的对应关系,即倾斜摄影模型中心点坐标属于哪个地图瓦片对应的经纬度坐标范围,即建立倾斜摄影模型编号与该地图瓦片编号之间的映射关系,循环执行,即可获取用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系。
71.其中,在步骤s4中,根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,获取待加载的当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型的url(uniform resource locator,统一资源定位器)地址,然后根据获取的待加载的当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型的url地址,完成当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型的加载。
72.进一步地,如图4所示,本发明技术方案还提供了一种海量3d模型分区控制加载方法,还包括:
73.s5,当用户移动拖拽地图时候,动态更新用户当前屏幕视野范围内全部地图瓦片编号,动态更新用户当前屏幕视野范围内全部地图瓦片编号具体包括:新增瓦片编号信息和脱离屏幕区域预设距离后清除瓦片编号信息。
74.其中,在步骤s5中,在动态更新用户当前屏幕视野范围内全部地图瓦片编号的过
程中,生成至少三个暂存区域,第一暂存区域用于存储当前屏幕视野范围内已加载地图瓦片编号信息,第二暂存区域用于存储当前屏幕视野范围内待新增地图瓦片编号信息,第三暂存区域用于存储当前屏幕视野范围内待删除地图瓦片编号信息,其中,当前屏幕视野范围内待删除地图瓦片编号信息,即,与当前屏幕视野范围的距离大于预设距离阈值的已加载地图瓦片(远离动态更新后的当前屏幕视野范围)的编号信息。
75.进一步地,如图5所示,本发明技术方案还提供了一种海量3d模型分区控制加载方法,还包括:
76.s6,根据第二暂存区域存储的待新增地图瓦片编号信息动态加载对应的倾斜摄影模型。
77.进一步地,如图6所示,本发明技术方案还提供了一种海量3d模型分区控制加载方法,还包括:
78.s7,根据第三暂存区域存储的待删除地图瓦片编号信息,比对待删除地图瓦片编号信息对应的倾斜摄影模型当前是否已加载完成,如果满足预设删除条件,清除待删除地图瓦片编号信息,并删除对应倾斜摄影模型;其中,预设删除条件包括但不限于:倾斜摄影模型加载不显示、倾斜摄影模型资源无法加载、倾斜摄影模型资源损坏。
79.进一步地,如图7-图8所示,其中,图7为倾斜摄影模型初始加载(举例说明)流程图,图8为倾斜摄影模型完整动态加载和清除(举例说明)流程图。
80.本发明对倾斜摄影数据进行预处理(均匀分割),获得多个倾斜摄影模型的编号;根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型,即通过分区(当前视野范围地图划分为多个瓦片,然后将倾斜摄影数据分割为多个倾斜摄影模型)加载策略,解决海量倾斜摄影模型加载带来的性能问题和瓶颈突破,从而实现任意地区任意数量的倾斜摄影模型的快速加载,最大程度提高用户使用体验;有效地提高较大文件的倾斜摄影模型的加载效率。
81.本发明技术方案中将倾斜摄影数据分割多个均等大小的倾斜摄影模型具体是:根据倾斜摄影数据文件大小、加载设备性能与倾斜摄影模型数量的对应关系,将倾斜摄影数据分割对应数量的均等大小的倾斜摄影模型,使得用户可以根据倾斜摄影数据文件大小以及自身设备性能情况,自定义分割后倾斜摄影模型的数量,提高了倾斜摄影数据分割的适应性。
82.本发明技术方案中当用户移动拖拽地图时候,动态更新用户当前屏幕视野范围内全部地图瓦片编号,动态更新用户当前屏幕视野范围内全部地图瓦片编号具体包括:新增瓦片编号信息和脱离屏幕区域预设距离后清除瓦片编号信息,使得地图瓦片编号与用户当前屏幕视野范围实时对应。
83.本发明技术方案中根据第三暂存区域存储的待删除地图瓦片编号信息,比对待删除地图瓦片编号信息对应的倾斜摄影模型当前是否已加载完成,如果满足预设删除条件,清除待删除地图瓦片编号信息,并删除对应倾斜摄影模型;其中,预设删除条件包括但不限于:倾斜摄影模型加载不显示、倾斜摄影模型资源无法加载、倾斜摄影模型资源损坏,能够根据动态更新后待删除地图瓦片编号信息,清除待删除地图瓦片编号信息以及对应倾斜摄影模型,不仅可以节省存储空间,而且还可以避免因为加载已删除地图瓦片编号信息对应
的倾斜摄影模型,导致加载效率变慢,进一步地提高较大文件的倾斜摄影模型的加载效率。
84.实施例二
85.如图9所示,本发明技术方案还提供了一种海量3d模型分区控制加载装置,包括:
86.预处理模块101,对倾斜摄影数据进行预处理,获得多个倾斜摄影模型的编号;
87.获得模块102,依据地图瓦片编号排序规则,获得用户当前屏幕视野范围内所有的地图瓦片的编号;
88.建立模块103,建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系;
89.加载模块104,根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型。
90.本发明对倾斜摄影数据进行预处理(均匀分割),获得多个倾斜摄影模型的编号;根据建立用户当前屏幕视野范围内全部地图瓦片编号和倾斜摄影模型分割后的编号的映射关系,加载当前用户屏幕视野范围内的地图瓦片编号对应的倾斜摄影模型,有效解决由于现有技术造成加载较大文件的倾斜摄影模型时候,就会出现加载时间过长,响应缓慢,操作卡顿等一系列性能问题,有效地提高较大文件的倾斜摄影模型的加载效率。
91.本发明技术方案中将倾斜摄影数据分割多个均等大小的倾斜摄影模型具体是:根据倾斜摄影数据文件大小、加载设备性能与倾斜摄影模型数量的对应关系,将倾斜摄影数据分割对应数量的均等大小的倾斜摄影模型,使得用户可以根据倾斜摄影数据文件大小以及自身设备性能情况,自定义分割后倾斜摄影模型的数量,提高了倾斜摄影数据分割的适应性。
92.本发明技术方案中当用户移动拖拽地图时候,动态更新用户当前屏幕视野范围内全部地图瓦片编号,动态更新用户当前屏幕视野范围内全部地图瓦片编号具体包括:新增瓦片编号信息和脱离屏幕区域预设距离后清除瓦片编号信息,使得地图瓦片编号与用户当前屏幕视野范围实时对应。
93.本发明技术方案中根据第三暂存区域存储的待删除地图瓦片编号信息,比对待删除地图瓦片编号信息对应的倾斜摄影模型当前是否已加载完成,如果满足预设删除条件,清除待删除地图瓦片编号信息,并删除对应倾斜摄影模型;其中,预设删除条件包括但不限于:倾斜摄影模型加载不显示、倾斜摄影模型资源无法加载、倾斜摄影模型资源损坏,能够根据动态更新后待删除地图瓦片编号信息,清除待删除地图瓦片编号信息以及对应倾斜摄影模型,不仅可以节省存储空间,而且还可以避免因为加载已删除地图瓦片编号信息对应的倾斜摄影模型,导致加载效率变慢,进一步地提高较大文件的倾斜摄影模型的加载效率。
94.上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1