一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种三维地形自动构建与渲染方法和装置与流程

2022-03-23 02:53:27 来源:中国专利 TAG:


1.本发明涉及计算机图形学技术领域,尤其涉及的是一种三维地形自动构建与渲染方法和装置。


背景技术:

2.在智慧城市业务的webgis系统中三维场景中需要城市内及周边三维地形作为可视化场景的基础要素,通常情况下建模方式构建的地形数据量太大,且建模后的数据在场景中需要调整比例与坐标配准,这种方式工作量大且数据质量也无法保证。
3.如何实现既可以在前端高效进行地形数据建模和渲染,又能极大地缩短web端三维可视化工程构建时间是函待解决的。
4.因此,现有技术还有待改进和发展。


技术实现要素:

5.本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种三维地形自动构建与渲染方法,旨在解决现有技术中要么不能高效地进行地形数据建模和渲染,要么需要大量的时间构建的问题。
6.本发明解决问题所采用的技术方案如下:
7.第一方面,本发明实施例提供一种三维地形自动构建与渲染方法,其中,所述方法包括:
8.获取三维地形高程数据;
9.根据所述三维地形高程数据,构建三维地形几何数据;
10.将所述三维地形几何数据进行渲染,得到目标三维地形。
11.在一种实现方式中,所述获取三维地形高程数据之前包括:
12.选择开发环境工具,所述开发环境工具为领域的地图开源引擎和web端通用引擎。
13.在一种实现方式中,所述获取三维地形高程数据具体为从数字高程模型中获取三维地形高程数据。
14.在一种实现方式中,所述根据所述三维地形高程数据,构建三维地形几何数据包括:
15.根据所述三维地形高程数据,得到若干二维地形切片数据;
16.根据若干二维地形切片数据,得到三维地形几何数据。
17.在一种实现方式中,所述根据所述三维地形高程数据,得到若干二维地形切片数据包括:
18.基于web墨卡托坐标系对所述三维地形高程数据进行切片,得到若干地形网格切片;
19.遍历计算每个所述地形网格切片的经纬度信息,得到地形网格切片像素信息;
20.将所有所述地形网格切片像素信息存储,得到若干二维地形切片数据。
21.在一种实现方式中,所述根据若干二维地形切片数据,得到三维地形几何数据包括:
22.创建一个二维切片几何类;
23.将若干二维地形切片数据以参数的形式传入至所述二维切片几何类,并通过预设的软件构建地形网格;
24.对所述地形网格中的顶点进行赋值,得到地形顶点数据;
25.根据所述地形顶点数据,对地形网格中的顶点赋值颜色参数,得到三维地形几何数据。
26.在一种实现方式中,所述将所述三维地形几何数据进行渲染,得到目标三维地形包括:
27.对所述三维地形几何数据中的顶点进行参数着色,得到目标三维地形。
28.第二方面,本发明实施例还提供一种三维地形自动构建与渲染装置,所述装置包括:三维地形高程数据获取模块,用于获取三维地形高程数据;
29.三维地形几何数据构建模块,用于根据所述三维地形高程数据,构建三维地形几何数据;
30.目标三维地形获取模块,用于将所述三维地形几何数据进行渲染,得到目标三维地形。
31.第三方面,本发明实施例还提供一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如上述任意一项所述的三维地形自动构建与渲染方法。
32.第四方面,本发明实施例还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述中任意一项所述的三维地形自动构建与渲染方法。
33.本发明的有益效果:本发明实施例首先获取三维地形高程数据;然后根据所述三维地形高程数据,构建三维地形几何数据;最后将所述三维地形几何数据进行渲染,得到目标三维地形;可见,本发明通过将所述三维地形高程数据构建三维地形几何数据,再将所述三维地形几何数据进行渲染,极大地缩短了三维可视化工程构建时间。
附图说明
34.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1为本发明实施例提供的三维地形自动构建与渲染方法流程示意图。
36.图2为本发明实施例提供的三维地形自动构建与渲染方法一种实施方式的流程示意图。
37.图3为本发明实施例提供的三维地形自动构建与渲染装置的原理框图。
38.图4为本发明实施例提供的智能终端的内部结构原理框图。
具体实施方式
39.本发明公开了三维地形自动构建与渲染方法和装置,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
40.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
41.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
42.由于现有技术中,如何实现既可以在前端高效进行地形数据建模和渲染,又能极大地缩短web端三维可视化工程构建时间函待解决。
43.为了解决现有技术的问题,本实施例提供了一种三维地形自动构建与渲染方法,通过将所述三维地形高程数据构建三维地形几何数据,再将所述三维地形几何数据进行渲染,极大地缩短了三维可视化工程构建时间。具体实施时,首先获取三维地形高程数据;然后根据所述三维地形高程数据,构建三维地形几何数据;最后将所述三维地形几何数据进行渲染,得到目标三维地形。
44.示例性方法
45.本实施例提供一种三维地形自动构建与渲染方法,该方法可以应用于计算机图形学的智能终端。具体如图1所示,所述方法包括:
46.步骤s100、获取三维地形高程数据;
47.具体地,从数字高程模型中获取三维地形高程数据,由于三维地形高程数据的数据量非常大,在web端数据传输难度较大,因此需要将其优化为更合适的数据源类型。此外,在获取三维地形高程数据之前,先要选择合适的开发环境工具,在本实施例中,所述开发环境工具为领域的地图开源引擎和web端通用引擎。如选择mapboxgl.js和three.js作为开发工具。mapboxgl.js和three.js均是世界级开源图形引擎。mapboxgl.js是webgis领域的地图开源引擎,用作地理信系统。three.js是web端通用引擎,有丰富的社区开发组件和积累,高度抽象的图形绘制和拓展丰富的接口。选用合适的开发工具的优点是:采用开源技术能够在最短时间内搭建webgis系统,具备相当的成熟度和扩展性。其中mapboxgl.js可以将three.js作为一个图层单独渲染在地图中,而three.js丰富的接口支持图形学底层接口webgl的开发,利用webgl的管线编程可以调用gpu(图形加速器)的并行渲染力量计算模拟出逼真的模拟特效,从而使mapboxgl.js搭建的webgis系统拥有直通底层的能力,利用gpu(图形加速器)渲染出高效稳定特效。其中,管线编程为一个接口编程,如:cpu,gpu等硬件底
层,是我们无法控制的。但是,传入cpu,gpu的数据,输出的东西,我们可以去控制。
48.得到三维地形高程数据后,就可以执行如图1所示的如下步骤:s200、根据所述三维地形高程数据,构建三维地形几何数据;相应的,所述根据所述三维地形高程数据,构建三维地形几何数据包括如下步骤:
49.s201、根据所述三维地形高程数据,得到若干二维地形切片数据;
50.s202、根据若干二维地形切片数据,得到三维地形几何数据。
51.在步骤s201中,所述根据所述三维地形高程数据,得到若干二维地形切片数据包括如下步骤:基于web墨卡托坐标系对所述三维地形高程数据进行切片,得到若干地形网格切片;遍历计算每个所述地形网格切片的经纬度信息,得到地形网格切片像素信息;将所有所述地形网格切片像素信息存储,得到若干二维地形切片数据。
52.具体地,如图2所示,先基于web墨卡托坐标系对所述三维地形高程数据进行切片,得到若干地形网格切片;如:基于web墨卡托坐标系对数字高程模型数据切片,将数字高程模型数据转为以行号、列号、缩放级别编码的png格式的切片,缩放级别可固定到12级,切片中像素以灰度值存储;web前端通过ajax方式获取到需要进行展示区域边界数据,通过计算获取到当前区域web墨卡托坐标系下的地形切片队列,也即地形网格切片。然后遍历计算每个所述地形网格切片的经纬度信息,得到地形网格切片像素信息,如:由于需得到一个区域的高程数据,只需确定左上角和右下角两个点坐标,故对获取到的网格切片队列(地形网格切片)遍历计算到其左上角和右下角的的经纬度信息。最后将所有所述地形网格切片像素信息存储,得到若干二维地形切片数据,如:将每个切片的像素信息绘制到canvas中以数组形式存储。
53.在步骤s202中,所述根据若干二维地形切片数据,得到三维地形几何数据包括如下步骤:创建一个二维切片几何类;将若干二维地形切片数据以参数的形式传入至所述二维切片几何类,并通过预设的软件构建地形网格;对所述地形网格中的顶点进行赋值,得到地形顶点数据;根据所述地形顶点数据,对地形网格中的顶点赋值颜色参数,得到三维地形几何数据。
54.具体地,先创建一个二维切片几何类;如:将每个切片的几何要素初始化,如:引入类,new就可以创建一个类,然后,将切片的几何的要素以参数的形式,传入类方法中。这样就将几何体初始化了。然后将若干二维地形切片数据以参数的形式传入至所述二维切片几何类,并通过预设的软件构建地形网格;如使用three.planebuffergeometry进行构建,其中切片(二维地形切片数据)的宽度和高度是通过右下角和左上角和web墨卡托坐标差值计算得到,单个切片里面的网格数固定为256和canvas中读取的像素分辨率一致。接着对所述地形网格中的顶点进行赋值,得到地形顶点数据,如:对planebuffergeometry中每个网格的顶点z值赋予对应canvas中的像素值,该网格的高程值需要转为web墨卡托坐标系下,即完成了地形顶点数据的构建。高程指的是某点沿铅垂线方向到绝对基面的距离,称绝对高程,简称高程。高程值与web墨卡托坐标系之间的转换用算法实现。现有技术中有算法函数,在此不再赘述。最后根据所述地形顶点数据,对地形网格中的顶点赋值颜色参数,得到三维地形几何数据;如:
55.要对地形数据高程值为0的顶点赋值底部颜色参数,高程值大于0的网格对应的顶点赋值顶部颜色参数,其中,所述底部颜色参数和顶部颜色参数均可以用户自定义。
56.得到三维地形几何数据后就可以执行如图1所示的如下步骤:s300、将所述三维地形几何数据进行渲染,得到目标三维地形。相应的,所述将所述三维地形几何数据进行渲染,得到目标三维地形包括如下步骤:对所述三维地形几何数据中的顶点进行参数着色,得到目标三维地形。
57.具体地,当得到三维地形几何数据后,三维地形的骨架已经搭建完成,此时需要构建地形的材质,对所述三维地形几何数据中的顶点进行参数着色,如:使用three.js材质three.meshlambertmaterial材质,并开启顶点着色参数,地形就可以从底部顶点到顶部顶点插值渲染出渐变颜色,得到目标三维地形,可以提升地形效果的立体感。
58.示例性设备
59.如图3中所示,本发明实施例提供一种三维地形自动构建与渲染装置,该装置包括三维地形高程数据获取模块401、三维地形几何数据构建模块402和目标三维地形获取模块403,其中:
60.三维地形高程数据获取模块401,用于获取三维地形高程数据;
61.三维地形几何数据构建模块402,用于根据所述三维地形高程数据,构建三维地形几何数据;
62.目标三维地形获取模块403,用于将所述三维地形几何数据进行渲染,得到目标三维地形。
63.基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图4所示。该智能终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏、温度传感器。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种三维地形自动构建与渲染方法。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏,该智能终端的温度传感器是预先在智能终端内部设置,用于检测内部设备的运行温度。
64.本领域技术人员可以理解,图4中的原理图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
65.在一个实施例中,提供了一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
66.获取三维地形高程数据;
67.根据所述三维地形高程数据,构建三维地形几何数据;
68.将所述三维地形几何数据进行渲染,得到目标三维地形。
69.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom
(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
70.综上所述,本发明公开了一种三维地形自动构建与渲染方法和装置,所述方法包括:获取三维地形高程数据;根据所述三维地形高程数据,构建三维地形几何数据;将所述三维地形几何数据进行渲染,得到目标三维地形。本发明通过将所述三维地形高程数据构建三维地形几何数据,再将所述三维地形几何数据进行渲染,极大地缩短了三维可视化工程构建时间。
71.基于上述实施例,本发明公开了一种三维地形自动构建与渲染方法,应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献