一种三维建筑模型动态加载方法、系统及存储介质与流程

文档序号:29862572发布日期:2022-04-30 11:38阅读:133来源:国知局
一种三维建筑模型动态加载方法、系统及存储介质与流程

1.本发明涉及计算机软件技术领域,具体涉及一种三维建筑模型动态加载方法、系统及存储介质。


背景技术:

2.在三维立体场景中呈现无线网络优化测量报告mr的指标数据,即由传统的二维呈现方式升级为三维呈现,可以全方位、立体化的展示测试区域中通信基站的覆盖范围,能够直观的描述通信基站和各数据采样点的关联关系,以及各测量点采集到的指标数据情况。
3.为达到上述目的,需要将城市级的地理信息数据按照图层进行切分,然后在三维mr指标呈现系统的三维场景中(3d map)将所有建筑物进行立体重构。
4.在传统的二维mr指标呈现系统中,直接调用第三方的地图引擎即可完成地理信息和指标的展示。但是,在三维mr指标呈现系统中,需要将按照图层切分后的建筑模型进行轮廓重组,如果每次用户拖拽或者与二维指标呈现系统联动时,都要加载全部建筑模型,会对计算机系统产生极大的负担,而且也比较耗时,从而影响最终用户的体验感。


技术实现要素:

5.针对现有技术中的技术缺陷,本发明实施例的目的在于提供一种三维建筑模型动态加载方法、系统及存储介质,以解决背景技术中所提出的技术问题。
6.为实现上述目的,第一方面,本发明实施例提供了一种三维建筑模型动态加载方法,包括:
7.获取显示器的可视区域;
8.判断可视区域是否有可用建筑物图层;其中,所述可用建筑物图层为预设地理区域的地理信息数据切分后形成的建筑物图层,所述可用建筑物图层可以多个,每个所述可用建筑物图层中可以包括多个建筑模型;
9.若是,根据第一预设方法从所有的可用建筑物图层中选取目标建筑物图层;其中,所述目标建筑物图层为需要加载显示的可用建筑物图层;
10.根据第二预设方法从所述目标建筑物图层中选取目标建筑模型;其中,所述目标建筑模型为需要在所述可视区域内显示的建筑模型;
11.在所述显示器的可视区域内对所述目标建筑模型进行三维显示。
12.进一步,若所述可视区域没有可用建筑物图层,在所述可视区域显示对应地理区域的二维图像。
13.进一步,获取显示器左下角和右上角的世界坐标,将这两个世界坐标转换为wgs-84坐标,获取显示器的可视区域。
14.进一步,根据第一预设方法从所有的可用建筑物图层中选取目标建筑物图层,包括:
15.判断可用建筑物图层与所述显示器的可视区域是否相交;
16.若是,则将对应的所述可用建筑物图层作为目标建筑物图层。
17.进一步,判断可用建筑物图层与所述显示器的可视区域是否相交,包括:
18.将可用建筑物图层认定为第一矩形,获取建筑物图层四个顶点的地理信息坐标,将四个顶点的地理信息坐标转换成wgs-84坐标后,计算得到第一矩形的中心坐标;
19.将显示器的可视区域认定为第二矩形,获取显示器左下角和右上角的世界坐标,将这两个世界坐标转换为wgs-84坐标后,计算得到第二矩形的中心坐标;
20.分别计算第一矩形中心坐标和第二矩形中心坐标的水平距离和垂直距离,若水平距离小于第一矩形和第二矩形长度之和的一半且垂直距离小于第一矩形和第二矩形宽度之和的一半,则所述可用建筑物图层与所述显示器的可视区域相交。
21.进一步,根据第二预设方法从所述目标建筑物图层中选取目标建筑模型,包括:
22.计算目标建筑物图层中所有建筑模型包围球心的wgs-84坐标;
23.根据每个所述建筑模型的wgs-84坐标,选择位于所述可视区域内建筑模型作为目标建筑模型。
24.进一步,根据每个所述建筑模型的wgs-84坐标,选择位于所述可视区域内建筑模型作为目标建筑模型,包括:
25.根据每个所述建筑模型的wgs-84坐标,计算每个所述建筑模型的包围球心坐标;
26.若建筑模型的包围球心坐标位于第二矩形范围内,则将对应的所述建筑模型选为目标建筑模型。
27.第二方面,本发明实施例还提供了一种三维建筑模型动态加载系统,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如第一方面所述的方法。
28.第三方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面所述的方法。
29.实施本发明实施例的方法,三维mr指标呈现系统在加载建筑模型时只加载位于显示器的可视区域内建筑模型,免加载不可见的建筑模型,有效提高了三维mr指标呈现系统的加载速度,减少计算机系统的运行负担,增强了用户体验。
附图说明
30.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。
31.图1是本发明实施例提供的一种三维建筑模型动态加载方法的流程图;
32.图2是本发明实施例提供的第一矩形r1和第二矩形r2相交的一种示意图;
33.图3是本发明实施例提供的包围球心坐标位于第二矩形范围内的一种示意图;
34.图4是本发明实施例提供的一种三维建筑模型动态加载系统的结构示意图。
具体实施方式
35.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
36.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
37.还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
38.还应当进一步理解,本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
39.如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0040]
需要注意的是,除非另有说明,本技术使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
[0041]
如图1所示,其示出了本发明实施例提供了一种三维建筑模型动态加载方法的流程图,该方法用于三维mr指标呈现系统在加载建筑模型时使用,三维mr指标呈现系统包括显示器和主机,该方法运行在主机内,显示器用于显示三维建筑模型。该方法可以包括:
[0042]
s100:获取显示器的可视区域。
[0043]
获取显示器左下角和右上角的世界坐标,将这两个世界坐标转换为wgs-84坐标,即可获取显示器的可视区域。wgs-84坐标系为地心坐标系。
[0044]
s200:判断可视区域是否有可用建筑物图层;其中,所述可用建筑物图层为预设地理区域的地理信息数据切分后形成的建筑物图层,所述可用建筑物图层可以多个,每个所述可用建筑物图层中可以包括多个建筑模型。
[0045]
三维mr指标呈现系统在做实际展示时,显示器的可视区域内包括的地理区域的地理信息数据可能没有预先进行切分形成建筑物图层,此时可视区域就没有可用建筑物图层。若所述可视区域没有可用建筑物图层,在所述可视区域显示对应地理区域的二维图像。
[0046]
s300:若是,根据第一预设方法从所有的可用建筑物图层中选取目标建筑物图层;其中,所述目标建筑物图层为需要加载显示的可用建筑物图层。
[0047]
具体的,根据第一预设方法从所有的可用建筑物图层中选取目标建筑物图层,包括:
[0048]
s310:判断可用建筑物图层与所述显示器的可视区域是否相交;
[0049]
s320:若是,则将对应的所述可用建筑物图层作为目标建筑物图层。
[0050]
具体的,判断可用建筑物图层与所述显示器的可视区域是否相交,包括:
[0051]
s3101:将可用建筑物图层认定为第一矩形,获取建筑物图层四个顶点的地理信息坐标,将四个顶点的地理信息坐标转换成wgs-84坐标后,计算得到第一矩形的中心坐标;
[0052]
s3102:将显示器的可视区域认定为第二矩形,获取显示器左下角和右上角的世界
坐标,将这两个世界坐标转换为wgs-84坐标后,计算得到第二矩形的中心坐标;
[0053]
s3103:分别计算第一矩形中心坐标和第二矩形中心坐标的水平距离和垂直距离,若水平距离小于第一矩形和第二矩形长度之和的一半且垂直距离小于第一矩形和第二矩形宽度之和的一半,则所述可用建筑物图层与所述显示器的可视区域相交。
[0054]
按照上述步骤,判断每个可用建筑物图层是否与显示器的可视区域相交,将与显示器的可视区域相交的可用建筑物图层作为目标建筑物图层。如图2所示,其示出了第一矩形r1和第二矩形r2相交的一种示例。
[0055]
s400:根据第二预设方法从所述目标建筑物图层中选取目标建筑模型;其中,所述目标建筑模型为需要在所述可视区域内显示的建筑模型。
[0056]
具体的,根据第二预设方法从所述目标建筑物图层中选取目标建筑模型,包括:
[0057]
s410:计算目标建筑物图层中所有建筑模型包围球心的wgs-84坐标;
[0058]
s420:根据每个所述建筑模型的wgs-84坐标,选择位于所述可视区域内建筑模型作为目标建筑模型。
[0059]
具体的,根据每个所述建筑模型的wgs-84坐标,选择位于所述可视区域内建筑模型作为目标建筑模型,包括:
[0060]
s4201:根据每个所述建筑模型的wgs-84坐标,计算每个所述建筑模型的包围球心坐标;
[0061]
s4202:若建筑模型的包围球心坐标位于第二矩形范围内,则将对应的所述建筑模型选为目标建筑模型。
[0062]
按照上述步骤,判断每个目标建筑物图层中的每个建筑模型是否为目标建筑模型。如图3所示,其示出了包围球心坐标位于第二矩形范围内的一种示例。图3中,包围球心坐标为(px,py),其中,x1《px《x2,y2《py《y1。
[0063]
s500:在所述显示器的可视区域内对所述目标建筑模型进行三维显示。
[0064]
确认目标建筑模型后,在三维mr指标呈现系统中加载对应的目标建筑模型,在显示器的可视区域内进行显示。对于位于显示器的可视区域外的建筑模型则不进行加载显示。
[0065]
实施本发明实施例的方法,三维mr指标呈现系统在加载建筑模型时只加载位于显示器的可视区域内建筑模型,免加载不可见的建筑模型,有效提高了三维mr指标呈现系统的加载速度,减少计算机系统的运行负担,增强了用户体验。
[0066]
基于相同的发明构思,本发明实施例还提供了一种三维建筑模型动态加载系统。如图4所示,该系统可以包括:一个或多个处理器101、一个或多个输入设备102、一个或多个输出设备103和存储器104,上述处理器101、输入设备102、输出设备103和存储器104通过总线105相互连接。存储器104用于存储计算机程序,所述计算机程序包括程序指令,所述处理器101被配置用于调用所述程序指令执行上述三维建筑模型动态加载方法实施例部分的方法。
[0067]
应当理解,在本发明实施例中,所称处理器101可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑
器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0068]
输入设备102可以包括键盘等,输出设备103可以包括显示器(lcd等)、扬声器等。
[0069]
该存储器104可以包括只读存储器和随机存取存储器,并向处理器101提供指令和数据。存储器104的一部分还可以包括非易失性随机存取存储器。例如,存储器104还可以存储设备类型的信息。
[0070]
具体实现中,本发明实施例中所描述的处理器101、输入设备102、输出设备103可执行本发明实施例提供的三维建筑模型动态加载方法的实施例中所描述的实现方式,在此不再赘述。
[0071]
需要说明的是,关于三维建筑模型动态加载系统的具体工作流程,可参考前述方法实施例部分,在此不再赘述。
[0072]
进一步地,本发明实施例还提供了一种可读存储介质,存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时实现:上述三维建筑模型动态加载方法。
[0073]
所述计算机可读存储介质可以是前述实施例所述的后台服务器的内部存储单元,例如系统的硬盘或内存。所述计算机可读存储介质也可以是所述系统的外部存储设备,例如所述系统上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述计算机可读存储介质还可以既包括所述系统的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述系统所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0074]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0075]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0076]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0077]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何
熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1