掌桥专利:专业的专利平台
掌桥专利
首页

一种针对高程平面的等高线的生成方法及装置

文献发布时间:2024-04-18 19:58:30


一种针对高程平面的等高线的生成方法及装置

技术领域

本发明属于地理信息系统领域,具体是一种针对高程平面的等高线生成方法和装置。

背景技术

传统的基于三角网生成高程平面算法由三角网生成等高线的思路大致是通过插值法获取含有对应高程的三角网,并获取该等高线在三角形边上的两个插值点,在此基础上前后相连生成等高线。该算法在设置约束条件后,可以处理各种断裂线等特殊地形,具有一定的普适性。

但如果某个三角形恰好处于高程平面内,这会使插值法在该三角形直接失效,导致等高线前后连接异常,导致算法效果不及预期。这是一个亟待解决的问题。

发明内容

本发明旨在解决上述所提及的技术问题之一,提供一种针对高程平面的等高线生成方法,该方法及装置通过使用双链表等数据结构及凸集优化算法,在生成过程中,提高了等高线的生成效率,并较好的解决了高程平面问题。

本发明的提供的技术方案:一种针对高程平面的等高线生成方法,包括以下步骤:

步骤1,生成三角网,确定比例尺和高程间距,输入三角网最大角度(默认170°),读取含有三维坐标的点文件,基于LOP算法,生成Delaunay三角网;

步骤2,生成等高线集合,根据生成的Delaunay三角形集合A{a

步骤201,根据等高间距s和集合A三角形的高程范围[h

步骤202,对于等高线h,筛选出A中所有高程范围包含h的三角形T,并移除出集合A,在集合T中,筛选并移除出属于高程平面的三角形集合S;

T{t

A=A-T

S{s

T=T-S

步骤203,对于集合T,选取集合T中的任意一个三角形t

1)t

2)t

3)t

步骤204,找到与三角形t

步骤205,遍历完成后,如果集合T中元素的数量不为空,重复步骤203~204,对于连通集等高线,

步骤206,对于属于高程平面的三角形集合S,选取集合S中的任意一个三角形s

步骤207,找到集合S中与三角形s

步骤208,重复步骤207,完成遍历后,重复步骤206和207,更新等高线集合L;

步骤209,重复步骤202~208,更新等高线集合L;

步骤3,根据等高线集合L、绘制条件和约束条件绘制等高线,包括以下步骤:

步骤301,筛选出所有满足断裂面约束条件的插值点,添加标记;

步骤302,依次遍历集合L内部元素,根据有序集合内部的插值点绘制等高线,碰到含有标记的插值点时,根据绘制条件,停止绘制或使用虚线绘制,直到在此碰到不含标记的高程点。

进一步的,所述步骤1包括:

步骤101,处理点集,生成包含全部点集的矩形,连接对角线,生成两个初始Delaunay三角形;

步骤102,依次插入点集,找到包含该顶点的三角形,通过三角形顶点生成三个三角形,通过翻转和优化操作将三角形转换新的Delaunay三角形;

步骤103,对于非Delaunay三角形,可以通过交换边的方式转换成Delaunay三角形,交换完成后,需检查相邻三角形是否仍是Delaunay三角形,如果不是,继续执行翻转操作,直至场上所有三角形都是Delaunay三角形;

步骤104,所有点集插入完成后,删除处于边界且最大角度超出的用户设置角度的三角形,删除所有与初始三角形共享顶点的三角形。

进一步的,上述集合均可为空集。

进一步的,上述的有序集合均可重复,且仅能首尾重复,重复时表示该有序集合为连通集。

本发明提供的另一技术方案:一种针对高程平面的等高线生成装置,包括:

等高线生成模块,确定比例尺、等高线间距、等高线样式、三角网样式、三角网最大角度和数据路径。自动三维点文件或点数据,自动生成Delaunay三角形及等高线,具体包括:

等高线数据处理单元:根据配置,自动读取文本文件或服务器发送过来的三维数据集,并自动校验,自动剔除异常点位数据并打印警告信息,避免三角网和等高线生成异常;

等高线约束单元:根据处理模块的约束条件,判断等高线数据集中的插值点是否满足生成断线的约束条件,满足则停止生成等高线并进行标记;

三角形存储单元:存储和读取Delaunay三角形数据集;

等高线集合存储单元:存储、读取和修改含由插值点组成的有序集合组成的等高线列表,每个插值点都有是否满足约束标记和绘图标记;

等高线绘制单元:根据绘制条件,可以绘制基于直线、贝塞尔或三次贝塞尔曲线的等高线,以及在等高线上添加高程标记等功能;

进一步,还包括展示模块,展示模块的界面主体分为两部分,用户配置部分和等高线效果展示部分。

本发明具有以下优点:该方法及装置针对高程平面做了大量优化,提高了等高线生成效率,较好的解决了含有高程平面的三角网绘制等高线异常等问题。

附图说明

图1是本发明的等高线算法生成的基本流程;

图2是是本发明从三角网生成等高线数据的具体流程;

图3是本发明生成的等高线示意图;

图4是本发明的界面模块示意图。

具体实施方式

下面通过实施例并结合附图,对本发明的技术方案作进一步的说明。

实施例:

一种针对高程平面的等高线生成方法,参考附图1,包括以下步骤:

步骤1,生成三角网,确定比例尺和高程间距,输入三角网最大角度(默认170°),读取含有三维坐标的点文件,基于LOP算法,生成Delaunay三角网,包括以下步骤;

步骤101,处理点集,生成包含所有点集的矩形,连接对角线,生成两个初始Delaunay三角形;

步骤102,依次插入点集,找到包含该顶点的三角形,通过三角形顶点生成三个三角形,通过翻转和优化操作将三角形转换新的Delaunay三角形;

步骤103,对于非Delaunay三角形,可以通过交换边的方式转换成Delaunay三角形,交换完成后,需检查相邻三角形是否仍是Delaunay三角形,如果不是,继续执行翻转操作,直至场上所有三角形都是Delaunay三角形;

步骤104,所有点集插入完成后,删除处于边界且最大角度超出的用户设置角度的三角形,删除所有与初始三角形共享顶点的三角形;

步骤2,生成等高线集合,根据生成的Delaunay三角形集合A{a

步骤201,根据等高间距s和集合A三角形的高程范围[h

步骤202,对于等高线h,筛选出A中所有高程范围包含h的三角形T,并移除出集合A,在集合T中,筛选并移除出属于高程平面的三角形集合S;

T{t

A=A-T

S{s

T=T-S

步骤203,对于集合T,选取集合T中的任意一个三角形t

1)t

2)t

3)t

步骤204,找到与三角形t

步骤205,遍历完成后,如果集合T中元素的数量不为空,重复步骤203-204,对于连通集等高线,

步骤206,对于属于高程平面的三角形集合S,选取集合S中的任意一个三角形s

步骤207,找到集合S中与三角形s

步骤208,重复步骤207,完成遍历后,重复步骤206和207,更新等高线集合L;

步骤209,重复步骤202-208,更新等高线集合L;

步骤3,根据等高线集合L、绘制条件和约束条件绘制等高线,包括以下步骤:

步骤301,筛选出所有满足断裂面约束条件的插值点,添加标记;

步骤302,依次遍历集合L内部元素,根据有序集合内部的插值点绘制等高线,碰到含有标记的插值点时,根据绘制条件,停止绘制或使用虚线绘制,直到在此碰到不含标记的高程点;

一种针对高程平面的等高线生成装置,包括:

等高线生成模块,确定比例尺、等高线间距、等高线样式、三角网样式、三角网最大角度和数据路径。自动三维点文件或点数据,自动生成Delaunay三角形及等高线,具体包括:

等高线数据处理单元:根据配置,自动读取文本文件或服务器发送过来的三维数据集,并自动校验,自动剔除异常点位数据并打印警告信息,避免三角网和等高线生成异常;

等高线约束单元:根据处理模块的约束条件,判断等高线数据集中的插值点数据是否满足生成断线的约束条件,满足则停止生成等高线并进行标记;

三角形存储单元:存储和读取Delaunay三角形数据集;

等高线集合存储单元:存储、读取和修改含由插值点组成的有序集合组成的等高线列表,每个插值点都有是否满足约束标记和绘图标记;

等高线绘制单元:根据绘制条件,可以绘制基于直线、贝塞尔或三次贝塞尔曲线的等高线,以及在等高线上添加高程标记等功能;

还包括展示模块,展示模块的界面主体分为两部分,用户配置部分和等高线效果展示部分。

因此,本发明具有以下优点:该方法及装置针对高程平面做了大量优化,提高了等高线生成效率,较好的解决了含有高程平面的三角网绘制等高线异常等问题。

本文中所描述的具体实例仅用于说明本发明的技术方案而非对其进行限制。本发明所属技术领域的技术人员可以对具体实施例做任意修改或补充。

相关技术
  • 一种电机等高线图的生成方法、装置和设备
  • 一种从等高线图生成数字高程模型的方法和装置
  • 一种从等高线图生成数字高程模型的方法和装置
技术分类

06120116500412