CN111899323B - 三维地球的绘制方法及装置 - Google Patents
三维地球的绘制方法及装置 Download PDFInfo
- Publication number
- CN111899323B CN111899323B CN202010618862.6A CN202010618862A CN111899323B CN 111899323 B CN111899323 B CN 111899323B CN 202010618862 A CN202010618862 A CN 202010618862A CN 111899323 B CN111899323 B CN 111899323B
- Authority
- CN
- China
- Prior art keywords
- dimensional
- rendering
- layer
- target
- earth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000009877 rendering Methods 0.000 claims abstract description 137
- 238000004590 computer program Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供了一种三维地球的绘制方法及装置,其中,该方法包括:根据地球的经纬度信息将所述三维地球划分为多个分层网格;对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,所述摄像范围与一个或多个目标网格存在交集;获取所述目标摄像装置与所述目标网格之间的目标距离,并采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,所述目标网格为所述多个分层网格中的任一网格;基于所述第二三维渲染画面绘制所述三维地球。通过本申请,解决了相关技术中对三维地球进行绘制仅得到纯三维内容产品,导致的在三维数字地球的表现力和承载能力较差问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种三维地球的绘制方法及装置。
背景技术
前国内主流产品采用国外引擎,或者开源社区的引擎,仿造WorldWind或者GoogleEarth,OSGEarth等产品,对三维地球进行绘制大多处于第一阶段,即纯三维内容产品。但是,这种纯三维内容产品在三维数字地球的表现力和承载能力较差,无法满足日益增长的需求。
发明内容
本申请实施例提供了一种三维地球的绘制方法及装置,以至少解决相关技术中对三维地球进行绘制仅得到纯三维内容产品,导致的在三维数字地球的表现力和承载能力较差问题。
根据本发明的一个实施例,提供了一种三维地球的绘制方法,包括:根据地球的经纬度信息将所述三维地球划分为多个分层网格;对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,所述摄像范围与一个或多个目标网格存在交集;获取所述目标摄像装置与所述目标网格之间的目标距离,并采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,所述目标网格为所述多个分层网格中的任一网格;基于所述第二三维渲染画面绘制所述三维地球。
根据本发明的另一个实施例,提供了一种三维地球的绘制装置,包括:划分模块,用于根据地球的经纬度信息将所述三维地球划分为多个分层网格;第一渲染模块,用于对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,所述摄像范围与一个或多个目标网格存在交集;第二渲染模块,用于获取所述目标摄像装置与所述目标网格之间的目标距离,并采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,所述目标网格为所述多个分层网格中的任一网格;绘制模块,用于基于所述第二三维渲染画面绘制所述三维地球。
根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述三维地球的绘制方法。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述三维地球的绘制方法。
通过本申请,是在将根据地球的经纬度信息将三维地球划分为多个分层网格之后,对在目标摄像装置的摄像范围内的物体进行渲染得到的第一三维渲染画面再次进行渲染,并将再次渲染得到的渲染画面作为绘制三维地球的依据,使得三维地球的精度更高,且表现力和承载力更好,解决了现有技术中解决相关技术中对三维地球进行绘制仅得到纯三维内容产品,导致的在三维数字地球的表现力和承载能力较差问题。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本申请实施例的一种三维地球的绘制方法的终端的硬件结构框图;
图2是根据本申请实施例的三维地球的绘制方法的流程图;
图3是根据本实施例的三维地球的分层网格示意图;
图4是根据本实施例的三维地球的分层后的瓦片示意图;
图5是根据本实施例的确定法线的示意图一;
图6是根据本实施例的确定法线的示意图二;
图7是根据本实施例的裙边示意图;
图8是根据本实施例的摄像装置与瓦片之间距离的示意图;
图9是根据本申请实施例的三维地球的绘制装置的结构示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例1
本申请实施例一所提供的方法实施例可以在终端、计算机终端或者类似的运算装置中执行。以运行在终端上为例,图1是本申请实施例的一种三维地球的绘制方法的终端的硬件结构框图。如图1所示,终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的三维数据的绘制方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(NetworkInterface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述终端的三维地球的绘制方法,图2是根据本申请实施例的三维地球的绘制方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,根据地球的经纬度信息将三维地球划分为多个分层网格;
步骤S204,对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,摄像范围与一个或多个目标网格存在交集;
步骤S206,获取目标摄像装置与目标网格之间的目标距离,并采用与目标距离对应的分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,该目标网格为所述多个分层网格中的任一网格;
步骤S208,基于第二三维渲染画面绘制三维地球。
通过上述步骤S202至步骤S208,是在将根据地球的经纬度信息将三维地球划分为多个分层网格之后,对在目标摄像装置的摄像范围内的物体进行渲染得到的第一三维渲染画面再次进行渲染,并将再次渲染得到的渲染画面作为绘制三维地球的依据,使得三维地球的精度更高,且表现力和承载力更好,解决了现有技术中解决相关技术中对三维地球进行绘制仅得到纯三维内容产品,导致的在三维数字地球的表现力和承载能力较差问题。
对于上述步骤S204中涉及到的对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面的方式中,摄像范围可选为摄像装置的视椎体,可以根据摄像机的位置、视野、远近裁剪面,便可构建一个视锥体。然后测试物体是否在视锥体的范围内,如果在范围内就渲染,如果不在范围内就不去渲染;视锥体裁剪可以直接减少需要渲染的多边形的数量。
可选地,在本申请实施例中,对于步骤S202中涉及到的根据地球的经纬度信息将三维地球划分为多个分层网格的方式,进一步可以是:
步骤S202-11,根据三维地球中所有经纬度信息所指示的全球地形数据,确定第一层网格;其中根据,第一层网格用于表示三维地球的全球地形;
步骤S202-12,根据经纬度信息中的目标经度对第一层网格进行划分得到第二层网格;
步骤S202-13,根据经纬度信息对第二层网格进行均匀划分得到第三层网格,其中,第三层网格包括由多个瓦片组成;多个瓦片所表示的经纬度的间隔距离是相等的。
对于上述步骤S202-11至步骤S202-13,在具体应用场景中可以是:将三维地球网格采用分层策略,整个三维地球网格分成若干层,每一层代表不同分辨率的地球,第一层分辨率最低。如图3所示,1)第一层是球体网格,用来表示全球地形;2)第二层从本初子午线处将地球网格一分为二,成为两个半球网格用来表示东半球和西半球;3)第三层将第二层中的每一个网格按照经纬度平均分成4份,一共八份;4之后的网格都是在前一层的基础上按照经纬度一分为4。
此外,需要说明的是,经过基于经纬度对三维地球进行网格分层之后,三维地球网格被划分成了多个部分,每一个部分称为一个瓦片,在构建瓦片的时候,在本实施例会中可选为只需要知道瓦片的最小经纬度和最大经纬度就可以了。在构建瓦片网格时,我们采样基于经纬度的均匀网格的方式构建,如图4所示,每一个均匀的小方格为一个瓦片。在本申请的具体应用场景中可以是:在构建网格时,可以从瓦片左上角开始构建,将瓦片按照经纬度平均分为32行、32列,那么每行每列就有33个顶点。
可选地,在本申请实施例中,在步骤S202-13中涉及到的根据经纬度信息对第二层网格进行均匀划分得到第三层网格之后,本申请的方法还包括:
步骤S302,确定第三层网格中相邻瓦片的顶点的法线;
步骤S304,基于瓦片建立对应的纹理贴图坐标;
步骤S306,获取相邻瓦片的相邻边上的顶点在纹理贴图坐标中的坐标,并将瓦片的裙边顶点指向三维地球球心反方向以构建瓦片的裙边。
需要说明的是,对于上述步骤S302中涉及到的确定法线的方式可以是如下两种:
1)让所有顶点的法线都指向球心的反方向,如图5所示,将顶点和圆心连线,从圆心指向顶点的向量就是顶点的法线。该确定法线的方式简单易实现,且性能高。
2)根据顶点周围的点来计算法线,如图6所示,通过该方式可以很好的表现地形起伏的光影效果。
可选地,对于上述步骤S304中涉及到的基于瓦片建立对应的纹理贴图坐标方式中,纹理贴图坐标即uv坐标,如图7所示,瓦片uv坐标系以左上角为原点,右下角为(1,1)点,每一个网格根据在瓦片中的相对位置均匀的设置uv坐标。
可选地,对于上述步骤S306中涉及到的获取相邻瓦片的相邻边上的顶点在纹理贴图坐标中的坐标,并将瓦片的裙边顶点指向三维地球球心反方向以构建瓦片的裙边的方式,如图7所示,裙边的uv可以直接用相邻边上的点的uv,法线则全部指向球心的反方向。由于瓦片之间可能会产生高度没有精确对齐,就会导致瓦片之间产生裂缝而影响视觉效果,因此,在瓦片的四周向地心方向构建一层网格围绕瓦片以形成裙边,从而解决了裂缝问题。
可选地,在本申请实施例中,对于步骤S206中涉及到的获取目标摄像装置与目标网格之间的目标距离的方式,进一步可以是:
步骤S206-11,基于第一层网格,第二层网格和第三层网格建立四叉树的树形数据结构;其中,第一层网格为四叉树中的根节点,第二层网格为根节点下的节点,第三层网格为第二层网格下的节点;
步骤S206-12,获取摄像装置与四叉树中每一个节点之间的距离,并将确定的距离作为目标距离。
对于上述步骤S206-11和步骤S206-12,在具体应用场景中可以是:构建四叉树的一个根节点,根节点表示整个地球的第一层网格。第二层节点比较特殊,因为三维地球的第二层网格是分为东西两个半球的,所以这里的底层节点应该是两个节点,分别对应东西两个半球。第三层节点在上一层基础上每个节点可以包含四个子节点,以此类推。每一个节点拥都拥有层级、x坐标、y坐标。根据这些给定信息可以计算出节点的最小经纬度和最大经纬度、还要计算中心点的经纬度,然后还要计算出中心点的坐标。
进一步地,如图8所示,可以根据摄像机和每个节点的距离来判断这个节点是否需要分裂成更高分辨率的子节点。计算方式是取节点中心到摄像机的距离和节点的层级进行比较,小于阈值就继续分裂,大于阈值就不在分裂。比如第10层级,高宽分别是400*400,那么分裂成四块的中心点是200,200的位置,基于此,分裂成4块.以此方式递归到底层。地球的周长大约是40076千米,按照四叉树分割,大约在2的21次方时,以每块以像素128*128来表达块,每个块状能表示的实际大小为约为19.109米,用19.109米除以128像素,得到每个像素可以表示的是厘米级的内容,一般这种精度就可以了。需要说明的是,如果需要再可以细分下去。
可选地,在本申请实施例中,对于上述步骤S206中涉及到的采用与目标距离对应的分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面的方式,进一步可以是:
步骤S206-11,在目标距离小于或等于预设距离的情况下,采用第一分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;
步骤S208-12,在目标距离大于预设距离的情况下,采用第二分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,第一分辨率大于第二分辨率。
需要说明的是,上述预设距离,以及第一分辨率和第二分辨率可以根据实际情况进行相应的设置,在本申请对此不做限定。
可选地,在本申请实施例中,对于上述步骤S208中涉及到的基于第二三维渲染画面绘制三维地球的方式,进一步可以是:
步骤S208-11,从内存中获取第二三维渲染画面;
步骤S208-12,在内存中存在第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制三维地球;
步骤S208-13,在内存中不存在第二三维渲染画面的情况下,从本地磁盘中获取第二三维渲染画面;
步骤S208-14,在本地磁盘中存在第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制三维地球;
步骤S208-15,在本地磁盘中不存在第二三维渲染画面的情况下,从远程服务器中获取第二三维渲染画面;
步骤S208-16,基于获取到的第二三维渲染画面绘制三维地球。
可见,在本申请实施例中为了加快资源的访问速度,采用了远程服务加本地磁盘缓存、内存缓存的策略。把海量的资源部署在远程服务器上,当客户端需要访问资源的时候,首先会在内存中寻找,如果找到了就会立刻使用资源,如果资源不在内存中则客户端会在磁盘的缓存目录下寻找,如果资源存在则加载资源到内存中,如果资源不存在则客户端会向服务器发送资源请求指令、远程服务器收到资源请求时便会向请求方发送资源。
需要说明的是,为了防止资源的加载导致主线程的卡顿,导致画面的卡顿,以及影响用户体验。在本申请实施例中使用了异步的方式来去加载所有所需的资源。我们使用了一个异步队列,所有的资源加载任务会先放入任务队列中,异步处理器会在子线程中从异步队列中取出加载任务,当任务完成时,会调用主线程的回调来做后续处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在本实施例中还提供了一种三维地球的绘制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图9是根据本申请实施例的三维地球的绘制装置的结构框图,如图9所示,该装置包括:
划分模块92,用于根据地球的经纬度信息将三维地球划分为多个分层网格;
第一渲染模块94,用于对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,摄像范围与一个或多个目标网格存在交集;
第二渲染模块96,用于获取目标摄像装置与目标网格之间的目标距离,并采用与目标距离对应的分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,目标网格为多个分层网格中的任一网格;
绘制模块98,用于基于第二三维渲染画面绘制三维地球。
可选地,本身亲中的划分模块92进一步可以包括:第一划分单元,用于根据三维地球中所有经纬度信息所指示的全球地形数据,确定第一层网格;其中根据,第一层网格用于表示三维地球的全球地形;第二划分单元,用于根据经纬度信息中的目标经度对第一层网格进行划分得到第二层网格;第三划分单元,用于根据经纬度信息对第二层网格进行均匀划分得到第三层网格,其中,第三层网格包括由多个瓦片组成;多个瓦片所表示的经纬度的间隔距离是相等的。
可选地,本申请的装置还可以包括:确定模块,用于在根据经纬度信息对第二层网格进行均匀划分得到第三层网格之后,确定第三层网格中相邻瓦片的顶点的法线;建立模块,用于基于瓦片建立对应的纹理贴图坐标;第一处理模块,用于获取相邻瓦片的相邻边上的顶点在纹理贴图坐标中的坐标,并将瓦片的裙边顶点指向三维地球球心反方向以构建瓦片的裙边。
可选地,本申请实施例中的第二渲染模块96进一步可以包括:建立单元,用于基于第一层网格,第二层网格和第三层网格建立四叉树的树形数据结构;其中,第一层网格为四叉树中的根节点,第二层网格为根节点下的节点,第三层网格为第二层网格下的节点;第二处理单元,用于获取摄像装置与四叉树中每一个节点之间的距离,并将确定的距离作为目标距离。
可选地,本申请实施例中的第二渲染模块96进一步可以包括:第一渲染单元,用于在目标距离小于或等于预设距离的情况下,采用第一分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;第二渲染单元,用于在目标距离大于预设距离的情况下,采用第二分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,第一分辨率大于第二分辨率。
可选地,本申请实施例中的绘制模块98进一步可以包括:第一获取单元,用于从内存中获取第二三维渲染画面;第一绘制单元,用于在内存中存在第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制三维地球;第二获取单元,用于在内存中不存在第二三维渲染画面的情况下,从本地磁盘中获取第二三维渲染画面;第二绘制单元,用于在本地磁盘中存在第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制三维地球;第三获取单元,用于在本地磁盘中不存在第二三维渲染画面的情况下,从远程服务器中获取第二三维渲染画面;第三绘制单元,用于基于获取到的第二三维渲染画面绘制三维地球。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种计算机可读的存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,根据地球的经纬度信息将三维地球划分为多个分层网格;
S2,对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,摄像范围与一个或多个目标网格存在交集;
S3,获取目标摄像装置与目标网格之间的目标距离,并采用与目标距离对应的分辨率对第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,该目标网格为所述多个分层网格中的任一网格;
S4,基于第二三维渲染画面绘制三维地球。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了便于描述,在这里可以使用空间相对术语,如“在……之上”、“在……上方”、“在……上表面”、“上面的”等,用来描述如在图中所示的一个器件或特征与其他器件或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了器件在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的器件被倒置,则描述为“在其他器件或构造上方”或“在其他器件或构造之上”的器件之后将被定位为“在其他器件或构造下方”或“在其他器件或构造之下”。因而,示例性术语“在……上方”可以包括“在……上方”和“在……下方”两种方位。该器件也可以其他不同方式定位(旋转90度或处于其他方位),并且对这里所使用的空间相对描述作出相应解释。
在本发明的描述中,需要理解的是,方位词如“前、后、上、下、左、右”、“横向、竖向、垂直、水平”和“顶、底”等所指示的方位或位置关系通常是基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,在未作相反说明的情况下,这些方位词并不指示和暗示所指的装置或元件必须具有特定的方位或者以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制;方位词“内、外”是指相对于各部件本身的轮廓的内外。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种三维地球的绘制方法,其特征在于,包括:
根据地球的经纬度信息将所述三维地球划分为多个分层网格;
对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,所述摄像范围与一个或多个目标网格存在交集;
获取所述目标摄像装置与所述目标网格之间的目标距离,并采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,所述目标网格为所述多个分层网格中的任一网格;
基于所述第二三维渲染画面绘制所述三维地球;
其中,根据地球的经纬度信息将所述三维地球划分为多个分层网格,包括:
根据所述三维地球中所有经纬度信息所指示的全球地形数据,确定第一层网格;其中根据所述第一层网格用于表示所述三维地球的全球地形;
根据所述经纬度信息中的目标经度对所述第一层网格进行划分得到第二层网格;
根据所述经纬度信息对所述第二层网格进行均匀划分得到第三层网格,其中,所述第三层网格包括由多个瓦片组成;所述多个瓦片所表示的经纬度的间隔距离是相等的。
2.根据权利要求1所述的方法,其特征在于,在根据所述经纬度信息对所述第二层网格进行均匀划分得到第三层网格之后,所述方法还包括:
确定所述第三层网格中相邻瓦片的顶点的法线;
基于所述瓦片建立对应的纹理贴图坐标;
获取相邻瓦片的相邻边上的顶点在纹理贴图坐标中的坐标,并将瓦片的裙边所述顶点指向所述三维地球球心反方向以构建瓦片的裙边。
3.根据权利要求1所述的方法,其特征在于,获取所述目标摄像装置与所述目标网格之间的目标距离,包括:
基于所述第一层网格,所述第二层网格和所述第三层网格建立四叉树的树形数据结构;其中,所述第一层网格为所述四叉树中的根节点,所述第二层网格为所述根节点下的节点,所述第三层网格为所述第二层网格下的节点;
获取所述摄像装置与所述四叉树中每一个节点之间的距离,并将确定的距离作为所述目标距离。
4.根据权利要求1所述的方法,其特征在于,采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面,包括:
在所述目标距离小于或等于预设距离的情况下,采用第一分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;
在所述目标距离大于预设距离的情况下,采用第二分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;
其中,所述第一分辨率大于所述第二分辨率。
5.根据权利要求1所述的方法,其特征在于,基于所述第二三维渲染画面绘制所述三维地球,包括:
从内存中获取所述第二三维渲染画面;
在所述内存中存在所述第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制所述三维地球;
在所述内存中不存在所述第二三维渲染画面的情况下,从本地磁盘中获取所述第二三维渲染画面;
在所述本地磁盘中存在所述第二三维渲染画面的情况下,基于获取到的第二三维渲染画面绘制所述三维地球;
在所述本地磁盘中不存在所述第二三维渲染画面的情况下,从远程服务器中获取所述第二三维渲染画面;
基于获取到的第二三维渲染画面绘制所述三维地球。
6.一种三维地球的绘制装置,其特征在于,包括:
划分模块,用于根据地球的经纬度信息将所述三维地球划分为多个分层网格;
第一渲染模块,用于对在目标摄像装置的摄像范围内的物体进行渲染,得到第一三维渲染画面;其中,所述摄像范围与一个或多个目标网格存在交集;
第二渲染模块,用于获取所述目标摄像装置与所述目标网格之间的目标距离,并采用与所述目标距离对应的分辨率对所述第一三维渲染画面再次进行渲染得到第二三维渲染画面;其中,所述目标网格为所述多个分层网格中的任一网格;
绘制模块,用于基于所述第二三维渲染画面绘制所述三维地球;
其中,所述划分模块包括:
第一划分单元,用于根据所述三维地球中所有经纬度信息所指示的全球地形数据,确定第一层网格;其中根据所述第一层网格用于表示所述三维地球的全球地形;
第二划分单元,用于根据所述经纬度信息中的目标经度对所述第一层网格进行划分得到第二层网格;
第三划分单元,用于根据所述经纬度信息对所述第二层网格进行均匀划分得到第三层网格,其中,所述第三层网格包括由多个瓦片组成;所述多个瓦片所表示的经纬度的间隔距离是相等的。
7.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5任一项中所述的方法。
8.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010618862.6A CN111899323B (zh) | 2020-06-30 | 2020-06-30 | 三维地球的绘制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010618862.6A CN111899323B (zh) | 2020-06-30 | 2020-06-30 | 三维地球的绘制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111899323A CN111899323A (zh) | 2020-11-06 |
CN111899323B true CN111899323B (zh) | 2023-03-24 |
Family
ID=73191320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010618862.6A Active CN111899323B (zh) | 2020-06-30 | 2020-06-30 | 三维地球的绘制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111899323B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112494941B (zh) * | 2020-12-14 | 2023-11-28 | 网易(杭州)网络有限公司 | 虚拟对象的显示控制方法及装置、存储介质、电子设备 |
CN114170360B (zh) * | 2021-11-30 | 2022-10-18 | 埃洛克航空科技(北京)有限公司 | 适用于多种地形数据的合并渲染方法、系统及电子设备 |
CN116129092A (zh) * | 2023-04-18 | 2023-05-16 | 中科星图测控技术股份有限公司 | 一种基于WebGL技术的海量空间目标可视化系统和方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6373489B1 (en) * | 1999-01-12 | 2002-04-16 | Schlumberger Technology Corporation | Scalable visualization for interactive geometry modeling |
US7436405B2 (en) * | 2004-05-14 | 2008-10-14 | Microsoft Corporation | Terrain rendering using nested regular grids |
US8665266B2 (en) * | 2010-06-23 | 2014-03-04 | The United States Of America, As Represented By The Secretary Of The Navy | Global visualization process terrain database builder |
US9165403B2 (en) * | 2011-01-14 | 2015-10-20 | Intel Corporation | Planetary scale object rendering |
US20150178976A1 (en) * | 2011-11-28 | 2015-06-25 | Google Inc. | View Dependent Level-of-Detail for Tree-Based Replicated Geometry |
US8650220B2 (en) * | 2012-06-05 | 2014-02-11 | Google Inc. | System and method for storing and retrieving geospatial data |
CN104766360B (zh) * | 2015-03-09 | 2017-12-22 | 腾讯科技(深圳)有限公司 | 一种三维空间数据的渲染方法及装置 |
GB2546286B (en) * | 2016-01-13 | 2020-02-12 | Sony Interactive Entertainment Inc | Apparatus and method of image rendering |
-
2020
- 2020-06-30 CN CN202010618862.6A patent/CN111899323B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111899323A (zh) | 2020-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111899323B (zh) | 三维地球的绘制方法及装置 | |
CN110990516B (zh) | 地图数据的处理方法、装置和服务器 | |
US10186083B1 (en) | Method and system for navigating in panoramic images using voxel maps | |
US20150187130A1 (en) | Automatic Generation of 2.5D Extruded Polygons from Full 3D Models | |
CN108038249B (zh) | 一种全球一张图数据存储组织方法及调用方法 | |
CN110990612B (zh) | 一种矢量大数据快速显示的方法及终端 | |
US8976169B1 (en) | Rendering terrain patches | |
CN108830923B (zh) | 图像渲染方法、装置及存储介质 | |
CN111862292A (zh) | 输电线路走廊的数据渲染方法、装置和计算机设备 | |
CN116628123B (zh) | 基于空间数据库的动态切片生成方法和系统 | |
US9679349B2 (en) | Method for visualizing three-dimensional data | |
EP2672454A2 (en) | Terrain-based virtual camera tilting and applications thereof | |
CN114648640B (zh) | 一种目标物单体化方法、装置、设备及存储介质 | |
CN115578536A (zh) | 一种分层分块三维模型节点合并方法、装置和电子装置 | |
CN114549671A (zh) | 一种网格编码方法及计算机系统 | |
CN112085826A (zh) | 一种高效的三维空间网格渲染方法及装置 | |
CN112435335A (zh) | 一种三维矢量瓦片数据生成方法及系统 | |
CN109712242B (zh) | 一种支持大规模三维场景虚拟漫游的模型数据组织方法 | |
CN111179414B (zh) | 一种地形lod的生成方法 | |
CN116975170A (zh) | 地图展示方法、地图数据生成方法、装置和电子设备 | |
CN114817619A (zh) | 基于栅格重投影的地图生成方法、系统、介质及设备 | |
CN114549761A (zh) | 基于分布式存储的实景三维模型分层渲染优化方法及系统、存储介质 | |
CN113626547A (zh) | 一种货运行业地图矢量切片方法、装置、存储介质及终端 | |
CN109542573B (zh) | 一种场景显示方法和装置 | |
CN116523884B (zh) | 一种遥感影像数据智能解译方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Room 1401-8, Building 2, Huijin Wealth Plaza, No. 258 Dengyun Road, Yushan Town, Kunshan City, Suzhou City, Jiangsu Province, 215300 Patentee after: Kunshan Shuangshu Digital Technology Co.,Ltd. Country or region after: China Address before: 200082 Room 5201, Building 5, Changyang Chuanggu, No. 1687, Changyang Road, Yangpu District, Shanghai Patentee before: Shanghai twin Technology Co.,Ltd. Country or region before: China |
|
CP03 | Change of name, title or address |