CN115170751A - 一种水系断面绘制方法及装置 - Google Patents

一种水系断面绘制方法及装置 Download PDF

Info

Publication number
CN115170751A
CN115170751A CN202210739576.4A CN202210739576A CN115170751A CN 115170751 A CN115170751 A CN 115170751A CN 202210739576 A CN202210739576 A CN 202210739576A CN 115170751 A CN115170751 A CN 115170751A
Authority
CN
China
Prior art keywords
elevation
point
marked
line
points
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
Application number
CN202210739576.4A
Other languages
English (en)
Inventor
彭林才
钟伟华
史经
黄鑫
张文娟
曾庆连
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Urban Rural Hospital Guangzhou Co ltd
Original Assignee
Urban Rural Hospital Guangzhou Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Urban Rural Hospital Guangzhou Co ltd filed Critical Urban Rural Hospital Guangzhou Co ltd
Priority to CN202210739576.4A priority Critical patent/CN115170751A/zh
Publication of CN115170751A publication Critical patent/CN115170751A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A10/00TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
    • Y02A10/40Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种水系断面绘制方法及装置,包括:获取待绘制水系地形图的若干待标记高程点;基于最小二乘法和随机抽样一致算法,对若干待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;确定设计中线的每一相邻的两个顶点之间的连线与每一断面线相交的每一交点,并计算每一交点的每一里程;将每一第一高程点投影到对应的断面线上,并基于每一第一高程点与设计中线的位置关系,计算投影后的每一第一高程点与每一交点之间的每一距离;利用线性插值计算每一交点的每一高程;根据每一里程、每一距离和每一高程,绘制断面线的断面图。采用本发明实施例能够实现水系断面图的自动化批量绘制,操作简单,提高出图效率。

Description

一种水系断面绘制方法及装置
技术领域
本发明涉及水利工程技术领域,尤其涉及一种水系断面绘制方法及装置。
背景技术
水系是城市径流雨水排放的重要通道、受纳及调蓄空间,在防洪除涝以及维护区域生态环境稳定中发挥着重要作用。对水系进行断面测绘不仅能够为建立水动力数学模型提供数据基础,也能够为供排水规划、海绵城市规划、水土保护规划以及防洪排涝等专题规划建设提供精准数据支撑,因此,十分有必要研究一种水系断面绘制方法,为城市规划建设提供有力的数据支撑。然而,现有的水系断面绘制方法操作比较繁琐,出图效率较低。
发明内容
本发明提供一种水系断面绘制方法及装置,以解决现有技术水系断面绘制方法操作比较繁琐、出图效率较低的问题,本发明通过高程点自动生成水系断面图,实现了水系横纵断面图的自动化批量绘制,操作简单,极大地提高了制作水系断面图的效率。
为实现上述目的,本发明实施例提供了一种水系断面绘制方法,包括:
获取待绘制水系地形图的若干待标记高程点;
基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
利用线性插值计算每一所述交点的每一高程;
根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
作为上述方案的改进,所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点,包括:
从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点;
利用最小二乘法对初始点集内的所有待标记高程点进行拟合,得到第一拟合直线;其中,所述初始点集包括距离所述第二高程点在第一预设距离内的所有的待标记高程点;
利用随机抽样一致算法对第一点集内的所有待标记高程点进行拟合,并迭代计算,得到第二拟合直线;其中,所述第一点集包括距离所述第一拟合直线在第一预设缓冲距离内的所有待标记高程点;
根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序;其中,所述第二点集包括距离所述第二拟合直线在第二预设缓冲距离内的所有待标记高程点;
根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集;
统计每一所述子点集中的待标记高程点的数量,得到高程点数量最多的子点集,利用随机抽样一致算法对该子点集内的所有待标记高程点进行拟合,得到第三拟合直线,并将该点集内的所有待标记高程点进行标记;
判断是否还存在任一所述待标记高程点,若是,返回步骤从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点。
作为上述方案的改进,所述根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序,包括:
判断所述第二拟合直线的斜率的绝对值是否大于预设数值,若是,将第二点集内的所有待标记高程点按照其y值的大小进行排序,否则,将第二点集内的所有待标记高程点按照其x值的大小进行排序。
作为上述方案的改进,所述根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集,包括:
计算经过排序的第二点集内的当前待标记高程点与前一待标记高程点之间的相邻距离;
判断所述相邻距离是否小于第一预设距离阈值,若是,将所述当前待标记高程点存入当前子点集,否则,存入下一子点集。
作为上述方案的改进,在所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点之后,所述水系断面绘制方法还包括:
当判断到任一断面线上的任一相邻的两个高程点之间的距离超过第二预设距离阈值时,补测该断面线的高程点,并基于最小二乘法和随机抽样一致算法,对补测的高程点进行直线拟合,生成新的断面线。
作为上述方案的改进,所述确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程,包括:
获取设计中线从下游至上游的每一顶点;
确定每一相邻的两个顶点之间的连线与每一断面线相交的交点;
对于每一交点,计算该交点与第一顶点之间的距离、位于所述第一顶点下游的所有顶点之间的折线总距离,并将所述设计中线的起点的初始里程、所述该交点与第一顶点之间的距离和所述折线总距离相加,得到该交点的里程;其中,所述第一顶点为与该交点相邻的,且位于该交点下游的顶点。
作为上述方案的改进,通过以下步骤对每一所述第一高程点与所述设计中线的位置关系进行判断,包括:
沿着所述设计中线的方向,从所有经过标记的高程点中,提取距离所述断面线在第三预设缓冲距离内的所有高程点,作为第一高程点;
对于每一断面线,确定与该断面线相交的设计中线的线段的两个第二顶点;
计算所述两个第二顶点之间的第一向量、任一第二顶点与该断面线的每一第一高程点之间的每一第二向量,将所述第一向量分别和每一所述第二向量进行向量外积运算,得到每一向量外积运算结果;
根据每一向量外积运算结果,得到该断面线的每一第一高程点相对于对应设计中线的每一位置关系。
作为上述方案的改进,所述利用线性插值计算每一所述交点的每一高程,包括:
分别从每一所述交点左右两侧提取距离该交点最近的高程点;
根据下式,计算每一所述交点的每一高程:
Figure RE-GDA0003831636580000041
式中,HLeftNearest为距离交点最近的左侧高程点的高程,HRightNearest为距离交点最近的右侧高程点的高程,DLeftNearest为距离交点最近的左侧高程点的投影与交点之间的距离,DRightNearest为距离交点最近的右侧高程点的投影与交点之间的距离。
作为上述方案的改进,所述根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图,包括:
以每一所述距离为横坐标,其对应的高程为纵坐标,进行横断面图的绘制;
以每一所述里程为横坐标,其对应的高程为纵坐标,进行纵断面图的绘制。
为实现上述目的,本发明实施例还提供了一种水系断面绘制装置,包括:
待标记高程点获取模块,用于获取待绘制水系地形图的若干待标记高程点;
断面线生成模块,用于基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
里程计算模块,用于确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
距离计算模块,用于将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
高程计算模块,用于利用线性插值计算每一所述交点的每一高程;
断面图绘制模块,用于根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
与现有技术相比,本发明实施例提供的一种水系断面绘制方法及装置,通过结合最小二乘法和随机抽样一致算法,由高程点自动生成水系断面图,并根据河流的设计中线及其流向,自动计算交点的里程、交点与第一高程点之间的距离、交点的高程,最终实现了水系横纵断面图的自动化批量绘制,操作简单,极大地提高了制作水系断面图的效率。
附图说明
图1是本发明实施例提供的一种水系断面绘制方法的流程图;
图2是本发明实施例读取到待标记高程点的示意图;
图3是本发明实施例提供的断面线示意图;
图4是本发明实施例提供的对待标记高程点进行直线拟合方法的流程图;
图5是本发明实施例提供的第二点集分割的示意图;
图6是本发明实施例提供的一种异常断面线示意图;
图7是本发明实施例提供的一种交点的里程计算示意图;
图8是本发明实施例提供的设计中线与第一高程点的位置关系示意图;
图9是本发明实施例提供的横断面图;
图10是本发明实施例提供的纵断面图;
图11是本发明实施例提供的一种水系断面绘制装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的一种水系断面绘制方法的流程图,所述水系断面绘制方法包括:
S1、获取待绘制水系地形图的若干待标记高程点;
S2、基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
S3、确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
S4、将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
S5、利用线性插值计算每一所述交点的每一高程;
S6、根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
在本发明实施例中,通过以ObjectARX.Net作为基础框架,并结合最小二乘算法和随机抽样一致(Random Sample Consensus,RANSAC)算法自动生成断面线平面图,实现了批量自动化生成水系断面图。
具体地,在步骤S1中,通过读取待绘制水系地形图的dwg文件,获取若干待标记高程点,读取到的若干待标记高程点如图2所示。
在一可选实施例中,步骤S2所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点,包括:
S21、从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点;
S22、利用最小二乘法对初始点集内的所有待标记高程点进行拟合,得到第一拟合直线;其中,所述初始点集包括距离所述第二高程点在第一预设距离内的所有的待标记高程点;
S23、利用随机抽样一致算法对第一点集内的所有待标记高程点进行拟合,并迭代计算,得到第二拟合直线;其中,所述第一点集包括距离所述第一拟合直线在第一预设缓冲距离内的所有待标记高程点;
S24、根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序;其中,所述第二点集包括距离所述第二拟合直线在第二预设缓冲距离内的所有待标记高程点;
S25、根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集;
S26、统计每一所述子点集中的待标记高程点的数量,得到高程点数量最多的子点集,利用随机抽样一致算法对该子点集内的所有待标记高程点进行拟合,得到第三拟合直线,并将该点集内的所有待标记高程点进行标记;
S27、判断是否还存在任一所述待标记高程点,若是,返回步骤从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点。
在一可选实施例中,步骤S24所述根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序,包括:
判断所述第二拟合直线的斜率的绝对值是否大于预设数值,若是,将第二点集内的所有待标记高程点按照其y值的大小进行排序,否则,将第二点集内的所有待标记高程点按照其x值的大小进行排序。
优选地,所述预设数值为1。
可以理解的是,高程点是三维坐标,具体表现为(x,y,h)。在本发明实施例中,当第二拟合直线的斜率的绝对值小于或等于预设数值时,将第二点集内的所有待标记高程点按照其坐标x值的大小进行排序;当第二拟合直线的斜率的绝对值大于预设数值时,将第二点集内的所有待标记高程点按照其坐标y值的大小进行排序。
在一可选实施例中,步骤S25所述根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集,包括:
S251、计算经过排序的第二点集内的当前待标记高程点与前一待标记高程点之间的相邻距离;
S252、判断所述相邻距离是否小于第一预设距离阈值,若是,将所述当前待标记高程点存入当前子点集,否则,存入下一子点集。
示例性的,如图4所示,在绘画软件中预先设置同一断面线中相邻高程点的最大距离M,拟合断面线缓冲区距离N,该最大距离M可以作为第一预设距离阈值,也可以作为下一步骤的第二预设距离阈值,该拟合断面线缓冲区距离 M可以作为第一预设缓冲距离、第二预设缓冲距离、第三预设缓冲距离。在本法实施例中,第一预设距离阈值、第二预设距离阈值、可以设置为相同的距离,也可以设置为不同的距离,第一预设缓冲距离、第二预设缓冲距离和第三预设缓冲距离可以设置为相同的距离,也可以设置不同的距离,在此不做限定。优选地,M=50米,N=5米。
从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点;
从所有所述待标记高程点中提取距离所述第二高程点在第一预设距离内的所有的待标记高程点,作为初始点集P0;利用最小二乘法对初始点集P0内的所有待标记高程点进行拟合,得到第一拟合直线L1;优选地,所述第一预设距离为大于5米且小于15米;
从所有所述待标记高程点中提取距离所述第一拟合直线L1两侧5米内的所有待标记高程点,作为第一点集P1;利用随机抽样一致算法对第一点集P1内的所有待标记高程点进行拟合,并迭代计算,得到第二拟合直线L2
从所有所述待标记高程点中提取距离所述第二拟合直线L2两侧5米内的所有待标记高程点,作为第二点集P2;根据所述第二拟合直线的斜率对第二点集P2内的所有待标记高程点进行排序;
根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集P2进行分割,得到若干子点集;统计每一所述子点集中的待标记高程点的数量,得到高程点数量最多的子点集,利用随机抽样一致算法对该子点集内的所有待标记高程点进行拟合,得到第三拟合直线,并将该点集内的所有待标记高程点进行标记;具体地,计算经过排序的第二点集P2内的当前待标记高程点与前一待标记高程点之间的相邻距离;判断所述相邻距离是否小于第一预设距离阈值,若是,将所述当前待标记高程点存入当前子点集NPLj,j为整数,初始值为0,否则,存入下一子点集NPLj+1,以此类推,直至第二点集P2所有待标记高程点分割完成。为了更好的理解第二点集P2的分割,如图5所示,在水系弯道处会出现多条断面线处于同一拟合直线上,将第二点集P2内的所有待标记高程点排序之后,计算相邻点之间的距离,只要距离大于第一预设距离阈值,就进行分割,最后会分割了三个点集NPL1、NPL2、NPL3,然后从中选取点数最多的点集即为NPL2进行拟合;
判断是否还存在任一所述待标记高程点,若是,重复上述所有步骤,直至所有待标记高程点完成标记,得到若干断面线,如图3所示。
示例性的,在一可选实施例中,在步骤S2所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点之后,所述水系断面绘制方法还包括:
当判断到任一断面线上的任一相邻的两个高程点之间的距离超过第二预设距离阈值时,补测该断面线的高程点,并基于最小二乘法和随机抽样一致算法,对补测的高程点进行直线拟合,生成新的断面线。
优选地,所述第二预设距离阈值为50米。
在本发明实施例中,当任一断面线上的任一相邻的两个高程点之间的距离超过第二预设距离阈值时,说明该断面线中间缺少过多的样本点,如图6所示,拟合的断面线1和2、3和4分别是同一断面线,其存在一组相邻的两个高程点之间的距离均超过了第二预设距离阈值的情况。为了保护断面图的精度,也为了防止弯道处不同断面线串联的情况,因此,对于出现该情况的断面线,需外业补测高程点,对新补测的高程点重复步骤S2,生成新的断面线。
在一可选实施例中,步骤S3所述确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程,包括:
获取设计中线从下游至上游的每一顶点;
确定每一相邻的两个顶点之间的连线与每一断面线相交的交点;
对于每一交点,计算该交点与第一顶点之间的距离、位于所述第一顶点下游游的所有顶点之间的折线总距离,并将所述设计中线的起点的初始里程、所述该交点与第一顶点之间的距离和所述折线总距离相加,得到该交点的里程;其中,所述第一顶点为与该交点相邻的,且位于该交点下游的顶点。
示例性的,如图7所示,在获取断面线与设计中线的任一交点cp的坐标后,计算交点cp与第一顶点v3的距离,然后再加上初始里程L0,以及顶点v1到顶点v3的折线总距离,即得到交点cp的里程Lcp=L0+d12+d23+d3c,其余交点的里程计算以此类推。
可以理解的是,设计中线是指水系河流设计中线,是根据要求进行绘制的,例如,可以根据正射影像找到需要测绘的河流中间的位置,然后逐个点进行连线,是一个多线段。
可以理解的是,初始里程是指起算点的里程,在本发明实施例中,是按照下游到上游的顺序计算里程,因此下游的起点对应的里程就是初始里程,一般甲方会提供,如未提供,默认值是0。
在一可选实施例中,在步骤S4中通过以下步骤对每一所述第一高程点与所述设计中线的位置关系进行判断,包括:
沿着所述设计中线的方向,从所有经过标记的高程点中,提取距离所述断面线在第三预设缓冲距离内的所有高程点,作为第一高程点;
对于每一断面线,确定与该断面线相交的设计中线的线段的两个第二顶点;
计算所述两个第二顶点之间的第一向量、任一第二顶点与该断面线的每一第一高程点之间的每一第二向量,将所述第一向量分别和每一所述第二向量进行向量外积运算,得到每一向量外积运算结果;
根据每一向量外积运算结果,得到该断面线的每一第一高程点相对于对应设计中线的每一位置关系。
示例性的,如图8所示,线AB为设计中线,A为处于下游的顶点,B为处于上游的顶点,点P为第一高程点,其左右位置可根据向量AB与AP的外积(叉乘)判断,其向量外积运算结果表示为AB×AP:
当判断到AB×AP>0时,点P在线段AB的左侧,如图8(a);
当判断到AB×AP<0时,点P在线段AB的右侧,如图8(b);
当判断到AB×AP=0时,点P在线段AB的延长线上,如图8(c)、图8(d)、图8(e)。
以交点(也称为中桩)为界,在判断同一断面线缓冲区内也即距离同一断面线在第三预设缓冲距离内的高程点相对于设计中线的左右位置后,将该第一高程点投影到断面线上,然后计算投影后的每个第一高程点与交点的距离,并规定左侧的第一高程点的距离为负值,右侧的第一高程点为正值,从而实现对第一高程点进行从左到右排序,即根据距离从小到大进行排序,该距离也就是第一高程点与中桩的距离。
在一可选实施例中,步骤S5所述利用线性插值计算每一所述交点的每一高程,包括:
分别从每一所述交点左右两侧提取距离该交点最近的高程点;
根据下式,计算每一所述交点的每一高程:
Figure RE-GDA0003831636580000111
式中,HLeftNearest为距离交点最近的左侧高程点的高程,HRightNearest为距离交点最近的右侧高程点的高程,DLeftNearest为距离交点最近的左侧高程点的投影与交点之间的距离,DRightNearest为距离交点最近的右侧高程点的投影与交点之间的距离。
在一可选实施例中,步骤S6根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图,包括:
以每一所述距离为横坐标,其对应的高程为纵坐标,进行横断面图的绘制;
以每一所述里程为横坐标,其对应的高程为纵坐标,进行纵断面图的绘制。
可以理解的是,对于横断面,利用每个断面线中,以左右两侧高程点与交点的距离为横坐标,规定左正右负,最后以高程为纵坐标,结合比例尺绘制横断面图;示例性的,横断面图如图9(a)所示,其中,图9(b)、(c)、(d) 分别图9(a)的局部放大图,图9(b)为具体里程信息(ZCSX4+468.70为该横断面的里程;T=36为该断面的高程点的数量,对应序号的最大值;L=19为断面左侧有19个高程点;下面五列分别表示高程点从左到右排列的序号、从左边第一个高程点到右侧每一个高程点的距离、左右两侧所有高程点到中桩的距离、各个高程点的高程、备注信息),图9(c)为坐标轴及断面图(纵坐标表示高程;横坐标表示距离;原点为中桩),图9(d)为绘图表格信息,具体包括单位、工程、比例尺等信息。
对于纵断面,利用设计中线与断面线的各个交点的里程为横坐标,以高程为纵坐标,结合比例尺绘制纵断面图;示例性的,纵断面图如图10(a)所示,其中图10(b)、(c)分别是图10(a)的局部放大图,图10(b)为坐标轴及断面图(横坐标为里程,其中,上刻度尺为标准里程刻度,下方的为高程点具体的刻度值;纵坐标为高程;断面线上的数值为高程点的高程值),图10(c)为绘图表格信息,具体包括单位、工程、比例尺等信息。
本发明实施例所提供的一种水系断面绘制方法,通过结合最小二乘法和随机抽样一致算法,由高程点自动生成水系断面图,并根据河流的设计中线及其流向,自动计算交点的里程、交点与第一高程点之间的距离、交点的高程,最终实现了水系横纵断面图的自动化批量绘制,操作简单,极大地提高了制作水系断面图的效率。
参见图11,图11是本发明实施例提供的一种水系断面绘制装置10的结构框图,所述水系断面绘制装置10,包括:
待标记高程点获取模块11,用于获取待绘制水系地形图的若干待标记高程点;
断面线生成模块12,用于基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
里程计算模块13,用于确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
距离计算模块14,用于将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
高程计算模块15,用于利用线性插值计算每一所述交点的每一高程;
断面图绘制模块16,用于根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
值得说明的是,本发明实施例所述的水系断面绘制装置10中各个模块的工作过程可参考上述实施例所述的水系断面绘制方法的工作过程,在此不再赘述。
本发明实施例所提供的一种水系断面绘制装置10,通过结合最小二乘法和随机抽样一致算法,由高程点自动生成水系断面图,并根据河流的设计中线及其流向,自动计算交点的里程、交点与第一高程点之间的距离、交点的高程,最终实现了水系横纵断面图的自动化批量绘制,操作简单,极大地提高了制作水系断面图的效率。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (10)

1.一种水系断面绘制方法,其特征在于,包括:
获取待绘制水系地形图的若干待标记高程点;
基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
利用线性插值计算每一所述交点的每一高程;
根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
2.如权利要求1所述的水系断面绘制方法,其特征在于,所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点,包括:
从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点;
利用最小二乘法对初始点集内的所有待标记高程点进行拟合,得到第一拟合直线;其中,所述初始点集包括距离所述第二高程点在第一预设距离内的所有的待标记高程点;
利用随机抽样一致算法对第一点集内的所有待标记高程点进行拟合,并迭代计算,得到第二拟合直线;其中,所述第一点集包括距离所述第一拟合直线在第一预设缓冲距离内的所有待标记高程点;
根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序;其中,所述第二点集包括距离所述第二拟合直线在第二预设缓冲距离内的所有待标记高程点;
根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集;
统计每一所述子点集中的待标记高程点的数量,得到高程点数量最多的子点集,利用随机抽样一致算法对该子点集内的所有待标记高程点进行拟合,得到第三拟合直线,并将该点集内的所有待标记高程点进行标记;
判断是否还存在任一所述待标记高程点,若是,返回步骤从所有所述待标记高程点中随机选取一待标记高程点,作为第二高程点。
3.如权利要求2所述的水系断面绘制方法,其特征在于,所述根据所述第二拟合直线的斜率对第二点集内的所有待标记高程点进行排序,包括:
判断所述第二拟合直线的斜率的绝对值是否大于预设数值,若是,将第二点集内的所有待标记高程点按照其y值的大小进行排序,否则,将第二点集内的所有待标记高程点按照其x值的大小进行排序。
4.如权利要求2所述的水系断面绘制方法,其特征在于,所述根据相邻的两个待标记高程点之间的第一预设距离阈值,对经过排序的第二点集进行分割,得到若干子点集,包括:
计算经过排序的第二点集内的当前待标记高程点与前一待标记高程点之间的相邻距离;
判断所述相邻距离是否小于第一预设距离阈值,若是,将所述当前待标记高程点存入当前子点集,否则,存入下一子点集。
5.如权利要求1所述的水系断面绘制方法,其特征在于,在所述基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点之后,所述水系断面绘制方法还包括:
当判断到任一断面线上的任一相邻的两个高程点之间的距离超过第二预设距离阈值时,补测该断面线的高程点,并基于最小二乘法和随机抽样一致算法,对补测的高程点进行直线拟合,生成新的断面线。
6.如权利要求1所述的水系断面绘制方法,其特征在于,所述确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程,包括:
获取设计中线从下游至上游的每一顶点;
确定每一相邻的两个顶点之间的连线与每一断面线相交的交点;
对于每一交点,计算该交点与第一顶点之间的距离、位于所述第一顶点下游的所有顶点之间的折线总距离,并将所述设计中线的起点的初始里程、所述该交点与第一顶点之间的距离和所述折线总距离相加,得到该交点的里程;其中,所述第一顶点为与该交点相邻的,且位于该交点下游的顶点。
7.如权利要求1所述的水系断面绘制方法,其特征在于,通过以下步骤对每一所述第一高程点与所述设计中线的位置关系进行判断,包括:
沿着所述设计中线的方向,从所有经过标记的高程点中,提取距离所述断面线在第三预设缓冲距离内的所有高程点,作为第一高程点;
对于每一断面线,确定与该断面线相交的设计中线的线段的两个第二顶点;
计算所述两个第二顶点之间的第一向量、任一第二顶点与该断面线的每一第一高程点之间的每一第二向量,将所述第一向量分别和每一所述第二向量进行向量外积运算,得到每一向量外积运算结果;
根据每一向量外积运算结果,得到该断面线的每一第一高程点相对于对应设计中线的每一位置关系。
8.如权利要求1所述的水系断面绘制方法,其特征在于,所述利用线性插值计算每一所述交点的每一高程,包括:
分别从每一所述交点左右两侧提取距离该交点最近的高程点;
根据下式,计算每一所述交点的每一高程:
Figure FDA0003717252070000041
式中,HLeftNearest为距离交点最近的左侧高程点的高程,HRightNearest为距离交点最近的右侧高程点的高程,DLeftNearest为距离交点最近的左侧高程点的投影与交点之间的距离,DRightNearest为距离交点最近的右侧高程点的投影与交点之间的距离。
9.如权利要求1所述的水系断面绘制方法,其特征在于,所述根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图,包括:
以每一所述距离为横坐标,其对应的高程为纵坐标,进行横断面图的绘制;
以每一所述里程为横坐标,其对应的高程为纵坐标,进行纵断面图的绘制。
10.一种水系断面绘制装置,其特征在于,包括:
待标记高程点获取模块,用于获取待绘制水系地形图的若干待标记高程点;
断面线生成模块,用于基于最小二乘法和随机抽样一致算法,对若干所述待标记高程点进行直线拟合,得到若干断面线及经过标记的高程点;
里程计算模块,用于确定设计中线的每一相邻的两个顶点之间的连线与每一所述断面线相交的每一交点,并计算每一所述交点的每一里程;
距离计算模块,用于将每一第一高程点投影到对应的断面线上,并基于每一所述第一高程点与所述设计中线的位置关系,计算投影后的每一所述第一高程点与每一所述交点之间的每一距离;其中,所述第一高程点为距离所述断面线在第三预设缓冲距离内的高程点;
高程计算模块,用于利用线性插值计算每一所述交点的每一高程;
断面图绘制模块,用于根据每一所述里程、每一所述距离和每一所述高程,绘制所述断面线的断面图。
CN202210739576.4A 2022-06-28 2022-06-28 一种水系断面绘制方法及装置 Pending CN115170751A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210739576.4A CN115170751A (zh) 2022-06-28 2022-06-28 一种水系断面绘制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210739576.4A CN115170751A (zh) 2022-06-28 2022-06-28 一种水系断面绘制方法及装置

Publications (1)

Publication Number Publication Date
CN115170751A true CN115170751A (zh) 2022-10-11

Family

ID=83488186

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210739576.4A Pending CN115170751A (zh) 2022-06-28 2022-06-28 一种水系断面绘制方法及装置

Country Status (1)

Country Link
CN (1) CN115170751A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116910887A (zh) * 2023-09-07 2023-10-20 长江水利委员会长江科学院 一种批量河道断面图的自动化绘制方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116910887A (zh) * 2023-09-07 2023-10-20 长江水利委员会长江科学院 一种批量河道断面图的自动化绘制方法
CN116910887B (zh) * 2023-09-07 2023-12-08 长江水利委员会长江科学院 一种批量河道断面图的自动化绘制方法

Similar Documents

Publication Publication Date Title
CN109035364B (zh) 一种基于cad地形图快速绘制剖面图的方法
JP4429737B2 (ja) ディジタル地形図の作成方法及び作成装置
EP1927954B1 (en) Terrain modeling based on curved surface area
CN103278115B (zh) 一种基于dem计算淤地坝淤积量的方法及系统
CN115170751A (zh) 一种水系断面绘制方法及装置
CN106297536B (zh) 电子地图中的面状图元名称的标注位置确定方法及装置
CN109937342B (zh) 用于定位移动物体的方法、装置和系统
CN111475592B (zh) 一种面向矢量图形文件的流域地图制作方法
CN111488411B (zh) 道路设施的构建方法以及装置、渲染方法、介质、终端
CN111414442A (zh) 一种基于航道地形图和水位数据的航标位置校核方法
CN114969944B (zh) 一种高精度道路dem构建方法
CN101093584B (zh) 粗线生成方法及装置
CN111125805B (zh) 一种基于数字高程模型和河流流向的无资料地区河道断面信息识别方法
CN115062557A (zh) 一种一维水动力模型断面数据转换为二维水动力模型地形数据的方法及装置
KR100764870B1 (ko) 수치지도의 등고선 자동입력장치와 그 입력방법
CN111444561A (zh) 一种河道地形模型建立方法及装置
CN103424759B (zh) 一种gps定位识别方法
CN111426329A (zh) 一种道路生成方法、装置、计算机设备及存储介质
CN113066179A (zh) 一种地图数据处理方法、装置、设备及存储介质
CN111238506A (zh) 一种地图中高架道路的描画方法、装置及相关设备
CN116645482B (zh) 一种大范围地面连续高程提取方法
CN114116950B (zh) 一种山脉范围划定方法及系统
Dou et al. A Unified LOD Model for River Network and DEM Based on an Improved 3D_DP Algorithm
JP7133821B1 (ja) 任意座標系点群による、自動採寸プログラム、自動採寸装置および自動採寸方法
CN115422611A (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