CN116342821A - 一种基于地形模型数据编辑方法、装置、设备和存储介质 - Google Patents
一种基于地形模型数据编辑方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN116342821A CN116342821A CN202310223893.5A CN202310223893A CN116342821A CN 116342821 A CN116342821 A CN 116342821A CN 202310223893 A CN202310223893 A CN 202310223893A CN 116342821 A CN116342821 A CN 116342821A
- Authority
- CN
- China
- Prior art keywords
- terrain
- editing method
- data editing
- model data
- terrain model
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000003860 storage Methods 0.000 title claims description 8
- 238000012545 processing Methods 0.000 claims abstract description 13
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 claims abstract description 6
- 238000012876 topography Methods 0.000 claims abstract description 5
- 238000004422 calculation algorithm Methods 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008520 organization Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 3
- 238000009877 rendering Methods 0.000 abstract description 2
- 238000007667 floating Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
- G06T17/205—Re-meshing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种基于地形模型数据编辑方法,所述方法包括:利用空间几何运算提取编辑区域内的地形瓦片;处理被多边形完全包含的地形瓦片,修改高程;对多边形部分相交的地形瓦片进行处理,修改顶点高程;搜索三角面,对多边形与三角面空间关系计算;对多边形与三角面进行崖壁填充处理,所述空间计算是通过四叉树引入支撑基元消除裂缝,获得光滑过度自然的地形网格,以及通过TIN模型简化模型数据,实现计算速度快、渲染效果好等特点。
Description
技术领域
本申请涉及电子地图数据处理技术领域,具体的是一种地形模型数据编辑方法
背景技术
电子地图作为一种便捷的地理信息获取手段,在人们的生活中发挥着重要的作用。现有的电子地图展示技术,通过服务端将真实的地理信息转化为矢量数据,再由客户端对矢量数据进行渲染,得到渲染后的矢量数据,并将其展示在电子地图中。在建筑、水利、交通等多个领域中,均会涉及到对电子地图上地形进行编辑的相关操作。其中地形压平是地形编辑的基础操作。但是现有的量化网格地图在对地形进行编辑时,会涉及到大量的多边形之间的布尔运算,多边形布尔运算的时间复杂度大,导致量化网格地形的编辑效率较低。
从理论上讲,三维地图的复杂性是无限的,而任何硬件的处理能力总是有限的。所以通过研究三维地形复杂性和人类视觉感知规律等相关因素的联系,设计出于三维地形区域大小基本不相关或弱相关的快速绘制算法是有必要的,是大规模地形三维可视化必须解决的问题,由于这些算法设计比较复杂,涉及到地形网格的化简,数据管理,数据调度和可视化,使得大规模地形的显示成为一个艰巨的任务。同时在大规模地形模型中,常常会出现模型裂缝,使得地形不光滑平整,过度不自然,使得最终效果受到影响。
发明内容
基于以上技术问题,本申请提供了一种地形模型数据编辑方法,解决现有地形模型出现的数据量庞大无法以及在模型中出现裂缝不光滑过度不自然的问题。
为解决以上技术问题,本申请采用的技术方案如下:
一种基于地形模型数据编辑方法,其特征在于:所述方法包括:
S1:利用空间几何运算提取编辑区域内的地形瓦片;
S2:处理被多边形完全包含的地形瓦片,修改高程;
S3:对多边形部分相交的地形瓦片进行处理,修改顶点高程;
S4:搜索三角面,对多边形与三角面空间关系计算;
S5:对多边形与三角面进行崖壁填充处理。
进一步的,所述S4中的空间关系计算是通过实时优化自适应网格算法对多边形与三角面空间关系计算,实时优化自适应网格算法是使用三角面形四叉树的组织形式。
进一步的,在实时优化自适应网格算法中引入支撑基元,使其消除裂缝。
进一步的,通过加入TIN模型算法,通过对顶点,边和面元来寻求简化。
进一步的,所述TIN模型算法是三角形折叠法。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述地形模型数据编辑方法的步骤。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,
使得所述处理器执行上述地形模型数据编辑方法的步骤。
与现有技术相比,本申请的有益效果是:
上述基于地形模型数据编辑方法、装置、设备和存储介质,实现了对现有地形模型出现的数据量庞大以及在模型中出现裂缝的问题,并且在进行地形编辑处理具有交互简单、计算速度快、渲染效果好、无需安装专业三维软件、可支持Web端和移动端等优点。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为地形模型数据编辑方法的流程示意图;
图2为引入支撑基元消除裂缝过程图;
图3为多边形与三角面空间关系计算示意图;
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
利用空间几何运算提取编辑区域内的地形瓦片,进行切片,图块大小为65x65像素。每个图块都是经过特殊编码的三角形网格,顶点在图块边缘处与相邻顶点重叠,从图块获取URL,并且根据指定坐标计算瓦片索引,得出数据头部以及顶点数据(vertex data)。所述数据头部文件的第一部分是具有以下格式的数据头,double是64位浮点数,float是32位浮点数。所述顶点数据(vertex data)文件的第一部分是具有以下格式的数据头。double是64位浮点数,float是32位浮点数。头部数据后面紧跟着顶点数据,unsigned int是32位无符号整数,unsigned short是16位无符号整数。vertexCount字段指示后面三个数组的大小。这三个数组包含来自前一个值的增量,然后进行zig-zag编码,以便使小整数(无论其符号如何)使用较少比特位。进行解码,三角形索引。紧跟在顶点数据之后的是索引数据。用来指示顶点如何链接在一起成三角形。tile使用IndexData32/IndexData16结构对索引进行编码为了对索引数据强制进行字节对齐,IndexData之前添加填充字节,以确保IndexData16为2字节对齐和IndexData32为4字节对齐。
具体的,基于Ray-Casting算法判断所述三角网格中的三角形的顶点是否位于所述多边形区域内部。
具体的,多边形区域内的三角瓦片可以采用Tile-Cover算法获得。
对所述多边形区域内的三角瓦片进行划分之前,还可以基于空间索引算法对多边形区域内的三角瓦片进行粗略搜索,搜索出与多边形区域存在相交可能的三角瓦片,以提高分选效率。
索引使用来自webgl-loader的高水位标记编码进行编码。
索引的每个三元组以逆时针顺序,渲染一个三角形。
三角索引之后还有四个边缘索引列表,保存了tile边缘上的顶点。
知道哪些顶点在边缘上以添加裙边以隐藏相邻细节层之间的裂缝是有帮助的。
边缘索引,三角索引之后还有四个边缘索引列表,保存了tile边缘上的顶点。顶点在边缘上以添加裙边以隐藏相邻细节层之间的裂缝是有帮助的。
处理被多边形完全包含的地形瓦片,修改高程。
将需要平滑处理的顶点记作第一地形瓦片数据边界点,计算周围地形瓦片数据近边界点与第一地形瓦片数据相对应的边界点的高程差值,生成高程差值文件。
计算周围地形瓦片数据近边界点与第一地形瓦片数据相对应的边界点的高程差值,具体包括:计算左上方地形瓦片近边界点与第一地形瓦片左上方顶点的高程差值,计算右上方地形瓦片近边界点、左下方地形瓦片近边界点和右下方地形瓦片近边界点的高程差值同理;计算每个上方地形瓦片近边界点和与其对应的第一地形瓦片上方顶点的高程差值,计算下方地形瓦片近边界点、左方地形瓦片近边界点和右方地形瓦片近边界点的高程差值同理。
在数字地球平台中加载第一地形瓦片数据,通过第一地形瓦片数据的编号调度其对应的高程差值文件,读取高程差值文件。
将第一地形瓦片数据周围一圈的点记作第一地形瓦片数据边界邻近点,基于高程差值计算第一地形瓦片数据边界邻近点的高程,具体包括加载地形时获取第一地形瓦片数据边界点的高程值,并对第一地形瓦片数据边界点高程值和对应的高程差值进行求和,求得第一地形瓦片数据周围的左上方点、上方点、右上方点、左方点、右方点、左下方点、下方点和右下方点地形高程值。
对多边形部分相交的地形瓦片进行处理,修改顶点高程
几何中每个顶点,根据位置从地形瓦片中采样并计算出高度值,直接顶点的高度进行修改。
通过实时优化自适应网格算法对多边形与三角面空间关系计算,实时优化自适应网格算法是使用三角面形四叉树的组织形式实现的。
四叉树其结构一般有一个树根节点和若干个树枝节点及叶节点组成,每一个节点包括网格的四个顶点和空间位置坐标,四个子节点指针和父节点指针。
采用这种结构建立地形多分辨率模型的基本操作是对初始四边形网格进行迭代细分,生成四个相等的小四边形,每个四边形覆盖整个地形的四分之一区域。然后对每个子节点表示的地形块进行一次迭代细分,生成四个更小的四边形,用来表示更高分频率的地形网格。
但是由于如果两个相邻的矩形区域分辨率不同,则在交界处会出现地形表面的不连续,实际显示时会出现空洞或裂缝。
因此在解决上述技术问题,本发明通过引入支撑型基元的方法来消除裂缝现象。
支撑型基源的构成:在出现裂缝的边界上,找到参与不同节点构网的顶点,从顶点开始连接低分辨率节点中其同层的中心顶点,然后从顶点分别连接节点的两个角点。四个顶点连接的实线就构成了支撑型基元。
在形成裂缝的节点边界处,对分辨率低的节点进行处理,从有裂缝边界上的最底层次顶点判断开始,如果该顶点没有参与该节点构网,就在该顶点引入支撑型基元,只需要把构成该支撑型基元的四个顶点中未激活的顶点激活,然后依次判断该边界上更高层次的顶点情况,直到该边界上没有更高一层的顶点为止,按照这个方法同样判断处理其他出现裂缝的边界,如图2所示,通过引入支撑基元的方法增加新的顶点,a为有裂缝的地形块,在点m处引入支撑基元如b所示,依次从该边界顶点n处引入支撑型基元如c所示,消除裂缝增加新的顶点如d所示,最后根据顶点状态信息构网如e所示。
最后利用四叉树分割和引入支撑基元消除裂缝的过程中建立的状态位表信息,使用递归算法实时构建出无裂缝地形网格,如图3所示,经过地形四叉树分割和裂缝修补后,四叉树中的节点会呈现基本方式,其他的方式都是该基本方式的N倍90度旋转而已。
对通过实时优化自适应网格算法进行处理,通过引入支撑型基元方法来消除基于四叉树构件多分辨率模型中的裂缝现象,可以保证地形在场景显示中更加的平滑和连续性。
其实对此还可以继续延伸,支撑型基元也可以是W型也可以是三角形等等,都能实现消除裂缝构建出无裂缝光滑的地形模型,在此就不做过多论述。
同时进行简化算法处理,为了解决大规模地形数据庞大的问题,对其终端使用造成很大的不便,最后对进行TIN模型算法,通过对顶点,边和面元来寻求简化。
所述算法为三角形折叠法,是在简化时以三角面作为被删除的基本元素,将三角形的权重定义为等角度与曲率的乘积,然后对网络模型上所有的三角形按照权重进行排序,并依次折叠。其原理是利用了一系列边收缩将原始网格的分辨率逐渐降低,最后得到一个低分辨率的网格和对应各个边收缩的一系列细节信息记录。相反的称之为顶点分裂过程,既通过向粗糙网中逐渐插入细节记录来恢复原始网格。从而保证了场景现实的实时,平滑和连续性。
最后对多边形与三角面进行崖壁填充处理。
在本实施例中,所有地形瓦片文件以.terrain作为文件后缀名。量化网格存储着地形三角网格的顶点坐标和三角形索引,每一个顶点坐标都具有三个属性:经度、纬度和高程。
为解决上述技术问题,本申请还公开了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述地形模型数据编辑方法的步骤。
其中,所述计算机可读存储介质存储有界面显示程序,所述界面显示程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的地形模型数据编辑方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器或者网络设备等)执行本申请各个实施例所述的方法。
如上即为本申请的实施例。上述实施例以及实施例中的具体参数仅是为了清楚表述申请的验证过程,并非用以限制本申请的专利保护范围,本申请的专利保护范围仍然以其权利要求书为准,凡是运用本申请的说明书及附图内容所作的等同结构变化,同理均应包含在本申请的保护范围内。
Claims (7)
1.基于地形模型数据编辑方法,其特征在于:所述方法包括:
S1:利用空间几何运算提取编辑区域内的地形瓦片;
S2:处理被多边形完全包含的地形瓦片,修改高程;
S3:对多边形部分相交的地形瓦片进行处理,修改顶点高程;
S4:搜索三角面,对多边形与三角面空间关系计算;
S5:对多边形与三角面进行崖壁填充处理。
2.根据权利要求1所述的一种基于地形模型数据编辑方法,其特征在于:所述S4中的空间关系计算是通过实时优化自适应网格算法对多边形与三角面空间关系计算,实时优化自适应网格算法是使用三角面形四叉树的组织形式。
3.根据权利要求2所述的一种基于地形模型数据编辑方法,其特征在于:在实时优化自适应网格算法中引入支撑型基元,使其消除裂缝。
4.根据权利要求3所述的一种基于地形模型数据编辑方法,其特征在于:通过加入TIN模型算法,通过对顶点,边和面元来简化模型数据。
5.根据权利要求4所述的一种基于地形模型数据编辑方法,其特征在于:所述TIN模型算法是三角形折叠法。
6.一种计算机设备,其特征在于:包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至5中任一项所述地形模型数据编辑方法的步骤。
7.一种计算机可读存储介质,其特征在于:存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至5中任一项所述地形模型数据编辑方法的骤步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310223893.5A CN116342821A (zh) | 2023-03-09 | 2023-03-09 | 一种基于地形模型数据编辑方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310223893.5A CN116342821A (zh) | 2023-03-09 | 2023-03-09 | 一种基于地形模型数据编辑方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116342821A true CN116342821A (zh) | 2023-06-27 |
Family
ID=86879987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310223893.5A Pending CN116342821A (zh) | 2023-03-09 | 2023-03-09 | 一种基于地形模型数据编辑方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116342821A (zh) |
-
2023
- 2023-03-09 CN CN202310223893.5A patent/CN116342821A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111008422B (zh) | 一种建筑物实景地图制作方法及系统 | |
Zlatanova et al. | Trends in 3D GIS development | |
CN101364310B (zh) | 一种三维模型图形的生成方法和装置 | |
US11875513B2 (en) | Self-adaptive point cloud stripe division method | |
CN104835202A (zh) | 一种三维虚拟场景快速构建方法 | |
EP3563353A1 (en) | Systems and methods for lightweight precise 3d visual format | |
CN111273877B (zh) | 一种实景三维数据与二维栅格图片的联动展示平台及其联动方法 | |
CN111090716A (zh) | 矢量瓦片数据处理方法、装置、设备和存储介质 | |
CN108491427B (zh) | Pdf瓦片地图及制作方法 | |
CN112989482B (zh) | Bim模型数据的生成方法及装置和构建方法及装置 | |
CN114820990B (zh) | 一种基于数字孪生的流域防洪可视化方法及系统 | |
CN113936114B (zh) | 一种bim模型构件类别级轻量化方法及系统 | |
CN116402966A (zh) | 一种三维地形可视化仿真建模方法 | |
She et al. | 3D building model simplification method considering both model mesh and building structure | |
CN115222806A (zh) | 多边形处理方法、装置、设备及计算机可读存储介质 | |
CN109712242B (zh) | 一种支持大规模三维场景虚拟漫游的模型数据组织方法 | |
CN117611768B (zh) | 一种基于cad图纸的道路参数化建模方法 | |
Kumar et al. | A CityGML extension for handling very large TINs | |
CN116342821A (zh) | 一种基于地形模型数据编辑方法、装置、设备和存储介质 | |
CN110930509A (zh) | 线性四元树多层模型驱动的dem即时可视化方法 | |
Chio et al. | The establishment of 3D LOD2 objectivization building models based on data fusion | |
Zhang et al. | Comparison of 4 vector polygon clipping algorithms in the spatial overlay analysis of GIS using simple feature model | |
Gruber et al. | Urban data management—A modern approach | |
CN117456123B (zh) | 基于点数据生成数字高程模型的方法 | |
CN117808949B (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 |