CN103413000B - 自动绘制斜坡线方法和装置 - Google Patents

自动绘制斜坡线方法和装置 Download PDF

Info

Publication number
CN103413000B
CN103413000B CN201310362595.0A CN201310362595A CN103413000B CN 103413000 B CN103413000 B CN 103413000B CN 201310362595 A CN201310362595 A CN 201310362595A CN 103413000 B CN103413000 B CN 103413000B
Authority
CN
China
Prior art keywords
line
slope
node
intersects
current
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
Application number
CN201310362595.0A
Other languages
English (en)
Other versions
CN103413000A (zh
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.)
Zhejiang Digital Technology Co., Ltd.
Original Assignee
WALKINFO TECHNOLOGY 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 WALKINFO TECHNOLOGY Co Ltd filed Critical WALKINFO TECHNOLOGY Co Ltd
Priority to CN201310362595.0A priority Critical patent/CN103413000B/zh
Publication of CN103413000A publication Critical patent/CN103413000A/zh
Application granted granted Critical
Publication of CN103413000B publication Critical patent/CN103413000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了自动绘制斜坡线方法和装置。其中,自动绘制斜坡线方法,包括步骤:绘制斜坡线的坡顶线、坡底线并显示,坡顶线为多条有向线段组成的折线段,有向线段的连接点为节点;依次遍历节点和节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合;将第一坡面线集合和第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示。本发明提供的自动绘制斜坡线方法和装置,无需人工干预,绘制出的坡面线就是经过剪枝处理后的较为到位的坡面线,减少了人工剪枝的工作量。

Description

自动绘制斜坡线方法和装置
技术领域
本发明涉及电子制图技术领域,具体而言,涉及自动绘制斜坡线方法和装置。
背景技术
当前,国内外对于地图符号的绘制展开了广泛的研究,其中现有的研究主要集中在通用地形图符号或符号库的设计、表达和存储,斜坡线是地形图绘制中的常见地图符号,包括自然斜坡、崩崖、陡崖、陡石山、堤岸等图式符号。当前地形图的绘制通常采用地理信息科学(GIS)软件进行计算机辅助制图,其中斜坡线等地图符号的绘制功能已变成GIS软件的一个标准功能模块。
虽然GIS软件可通过其通用地形图符号的表达实现斜坡线的绘制功能,但是,目前坡面线的绘制根据坡顶线与坡底线的相对位置、长度和角度动态生成;坡面线为自坡顶线引出的等间距垂线,数据量较大,而大量的等间距坡面线之间会出现相交,而坡面线在相交处向外继续延伸,大量的延伸线相互交错使整个图形较为杂乱,现有技术由于没有设置对这些相交线进行处理的机制,只能通过人工对这些出现相交的坡面线进行一一剪枝,比较耗费人力。
综上,现有技术中的一些制图应用,存在需要依靠人工对出现相交的坡面线进行剪枝的技术缺陷。
发明内容
本发明的目的在于提供自动绘制斜坡线方法和装置,以解决上述的问题。
在本发明的实施例中提供了一种自动绘制斜坡线方法,包括步骤:
步骤A,绘制斜坡线的坡顶线、坡底线并显示,所述坡顶线为多条有向线段组成的折线段,有向线段的连接点为节点;
步骤B,依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合;
步骤C,将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示。
其中,所述步骤B中依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合,包括步骤:
步骤B1,遍历所述节点,判断遍历是否结束,结束,则执行步骤C,否,则执行步骤B2;
步骤B2,判断由当前节点连接的有向线段的方向夹角大小是否小于180°,是,则执行步骤B3,否,则跳过当前节点,继续遍历后续节点;
步骤B3,依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量;
步骤B4,遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行步骤B1,否,则执行步骤B5;
步骤B5,判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断。
其中,所述步骤B中依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合,还包括步骤:
步骤B6,循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复步骤B6。
其中,所述步骤B中获取坡面线与坡底线相交的第二坡面线集合和无相交的坡面线的第三坡面线集合,包括步骤:
步骤B7,当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复步骤B7。
其中,所述步骤B7中判断当前坡面线是否与坡底线相交,包括步骤:
检测坡顶线和坡底线构成的最小外包多边形;
当当前坡面线与所述最小外包多边形相交,则判定该坡面线与坡底线相交,否,则判定无相交。
其中,所述步骤B1之前还包括步骤:
为每一条坡面线分配线序号进行标记,为每一个节点分配节点序号进行标记。
本发明还提供一种自动绘制斜坡线装置,包括绘制模块和获取模块;
所述绘制模块,用于绘制斜坡线的坡顶线、坡底线并显示,并将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示;
所述获取模块,用于依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合。
其中,所述获取模块,用于:
遍历所述节点,判断遍历是否结束,结束,则执行后续步骤,否,则判断由当前节点连接的有向线段的方向夹角大小是否小于180°,否,则跳过当前节点,继续遍历后续节点;是,则依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量;遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行前述步骤,否,则判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断。
其中,所述获取模块,还用于:
循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复判断。
其中,所述获取模块,还用于:
当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复判断。
本发明上述实施例的自动绘制斜坡线方法和装置,通过遍历节点以及节点两侧的坡面线,获取坡面线之间相交的坡面线集合以及坡面线与破底线相交的坡面线集合,并对这些集合进行剪枝处理,这样无需人工干预,绘制出的坡面线就是经过剪枝处理后的较为到位的坡面线,减少了人工剪枝的工作量。
附图说明
图1为本发明的自动绘制斜坡线方法的流程示意图;
图2为本发明的一个具体示例的绘制后的坡面线图形;
图3为本发明的图2所示的具体示例的流程示意图;
图4为本发明的自动绘制斜坡线装置的结构模块图。
具体实施方式
下面通过具体的实施例子并结合附图对本发明做进一步的详细描述。
本发明实施例提供了一种自动绘制斜坡线方法,参见图1所示,包括步骤:
步骤S10:绘制斜坡线的坡顶线、坡底线并显示。
所述坡顶线为多条有向线段组成的折线段,有向线段的连接点为节点。即所述绘制的坡顶线和坡底线是由多个节点构成的有向折线。
步骤S11:依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合。
优选地,作为一种可实施方式,第一坡面线集合和第二坡面线集合通过如下方式获取:
步骤S111,遍历所述节点,判断遍历是否结束,结束,则执行步骤S12,否,则执行步骤S112。
步骤S112,判断由当前节点连接的有向线段的方向夹角大小是否小于180°,是,则执行步骤S113,否,则跳过当前节点,继续遍历后续节点。
步骤S113,依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量。
步骤S114,遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行步骤S111,否,则执行步骤S115。
步骤S115,判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断。
优选地,应预先为每一条坡面线分配线序号进行标记,为每一个节点分配节点序号进行标记。即,所述线序号,为坡面线的编号,用于区分不同的坡面线,所述节点序号,为节点的编号,用于区分不同的节点。
步骤S116,循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复步骤S116。
步骤S117,当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复步骤S117。
步骤S12:将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示。
下面再对上述步骤进行整体性描述:
首先,遍历构成坡顶线的节点集合,如果遍历结束,则跳到步骤S12。依据地形图斜坡线图式得到坡面线间隔,计算当前节点左右两侧坡面线数量;遍历坡面线数量多的一侧坡面线,如果遍历结束则返回最开始的步骤。
判断此坡面线是否与节点另一侧的坡面线相交,相交则保存此组坡面线序号及节点序号,并跳转到下一条坡面线,否则循环判断此坡面线是否与另一侧的下一条坡面线相交,如果相交则保存此组坡面线,并跳转到下一条坡面线继续判断。
循环判断此坡面线是否与下一节点的另一侧坡面线相交,相交则保存此组坡面线,否则跳到下一个节点并重复此步骤。
如果之前的步骤中判定的此坡面线与后续所有节点另一侧的坡面线都不相交,则判断此坡面线是否与坡底线相交,如果相交则将此坡面线保存到与坡底线相交的坡面线集合,否则保存到无相交的坡面线集合,并跳转到下一条坡面线重复此步骤。
遍历有相交的坡面线组集合,剪枝后进行绘制,遍历与坡底线相交的坡面线集合,剪枝后进行绘制,遍历无需剪枝的坡面线集合,直接进行绘制,最终生成一条美观的斜坡线。
其中需要注意的是,绘制坡面线时,必须依据斜坡线图式的坡面线间隔,以及当前的地图比例尺进行绘制,绘制一条美观的坡面线有三种可能情况,情况一是此坡面线与其他坡面线相交,情况二是此坡面线与坡底线相交,情况三是此坡面线无相交,其中情况一需保存有相交的一组坡面线,情况二和情况三则只需保存此条坡面线。
在判断坡面线与坡面线是否相交时,由于绘制的坡面线垂直于坡顶线,所以某个节点同侧的坡面线不会相交,因此如果绘制的是等长坡面线,可首先判断节点两侧的第一组坡面线是否有相交,无相交则可直接跳到判断坡面线与坡底线是否相交的步骤,如果绘制的是长短相间的坡面线,可首先判断此节点两侧各两条坡面线是否有相交,无相交同样可直接跳到判断坡面线与坡底线是否相交的步骤,有相交则保存此组坡面线到有相交的坡面线组集合,并继续遍历此节点一侧的坡面线;如果此坡面线与另一侧的坡面线无相交,则需判断此坡面线是否与后续节点的某侧坡面线是否有相交,有相交则保存此组坡面线到有相交的坡面线组集合,无相交则同样可直接跳到判断坡面线与坡底线是否相交的步骤;其中后续节点的选择依据是,当前坡面线所处的折线段与后续节点某侧的折线段构成的方向夹角小于180°。
其中,判断坡面线与坡底线是否相交,采用的是判断坡面线是否与坡顶线及坡底线构成的最小外包多边形有相交,有相交则保存此坡面线到与坡底线相交的坡面线集合,否则保存到无相交的坡面线集合。
生成一条美观的坡面线,必须对有相交的一组坡面线延长部分进行剪枝,以及对与坡底线的坡面线延长部分进行剪枝。
列举一个具体示例,对本发明的实施步骤作进一步说明,参见图2所示。
第一步为绘制斜坡线的坡顶线和坡底线,如附图2所示。
其中,坡顶线为自左向右的有向折线段构成,其中节点记为Di,i∈(1,3),折线段记为Li,i∈(1,4),坡面线记为Pi,i∈(1,14)。
第二步为遍历构成坡顶线的节点集合,获取有相交的坡面线组集合,获取与坡底线相交的坡面线集合,以及获取无相交的坡面线集合,第二步包括以下子步骤:
2.1)遍历构成坡顶线的节点集合,如果遍历结束,则跳到步骤2.6)。例如,首先判断构成节点的方向夹角大小是否小于180°,当节点为D1时,执行下一步,当循环到D2时,由于方向夹角大于180°,则跳到节点D3继续执行下一步。
2.2)依据地形图斜坡线图式得到坡面线间隔,计算当前节点左右两侧坡面线数量,坡面线数量=折线段长度/坡面线间隔。例如,D1节点左侧的坡面线数量=4,右侧的坡面线数量=2。
2.3)遍历坡面线数量多的一侧坡面线,如果遍历结束则跳到步骤2.1)。例如,由于节点D1左侧坡面线数量>右侧的坡面线数量,因此选择首先遍历D1左侧的坡面线,并且从离节点最近的坡面线p4开始,进行递减循环遍历。
2.4)判断此坡面线是否与节点另一侧的坡面线相交,相交则保存此组坡面线序号及节点序号,并跳转到下一条坡面线重复步骤2.3),否则循环判断此坡面线是否与另一侧的下一条坡面线相交,如果相交则保存此组坡面线,并跳转到下一条坡面线重复步骤2.3)。例如,首先判断p4与p5是否相交,并保存一组坡面线,记为pairList[(p4,p5)],同样判断p3与p6是否相交,添加并保存为pairList[(p4,p5),(p3,p6)]。
2.5)循环判断此坡面线是否与下一节点的另一侧坡面线相交,相交则保存此组坡面线,否则跳到下一个节点并重复步骤2.5)。例如,判断坡面线p2的相交情况,首先判断有向折线段L1与节点D2的有向折线段L3无相交,跳到有向折线段L4,L1与L4的方向夹角小于180°,因此开始遍历L4的所有坡面线,并判断p2是否与L4的坡面线有相交,保存并记为pairList[(p4,p5),(p3,p6),(p2,p13)]。
2.6)如果步骤2.4)判定的此坡面线与后续所有节点另一侧的坡面线都不相交,则判断此坡面线是否与坡底线相交,如果相交则将此坡面线保存到与坡底线相交的坡面线集合,否则保存到无相交的坡面线集合,并跳转到下一条坡面线重复步骤2.6)。例如,p1与坡底线无相交,保存并记为wxjList[p1],此时L1的坡面线遍历结束,则跳到下一节点继续重复子步骤2.1),p14与坡底线有相交,保存并记为xjList[p14]。
3)遍历有相交的坡面线组集合,剪枝后进行绘制,遍历与坡底线相交的坡面线集合,剪枝后进行绘制,遍历无需剪枝的坡面线集合,直接进行绘制,最终生成一条美观的斜坡线。
例如,循环坡面线组集合pairList中的所有元素并进行剪枝绘制,循环坡面线组集合xjList中的所有元素并进行剪枝绘制,循环并绘制wxjList中的所有坡面线。
该具体示例的流程图参见图3所示。其中,坡顶线是由有向折线段组成,坡面线集合分为三种类型,分别是:两两相交的坡面线:与坡底线相交的坡面线:无相交的坡面线。
判断是否遍历完位于Li的坡面线时,假设当节点的左右两侧折线段分别为Li,Lj并且Li的坡面线数量大于Lj的坡面线数量。
本发明还提供一种自动绘制斜坡线装置,参见图4所示,包括绘制模块1和获取模块2。
所述绘制模块1,用于绘制斜坡线的坡顶线、坡底线并显示,并将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示。
所述获取模块2,用于依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合。
所述获取模块2,用于:
遍历所述节点,判断遍历是否结束,结束,则执行后续步骤,否,则判断由当前节点连接的有向线段的方向夹角大小是否小于180°,否,则跳过当前节点,继续遍历后续节点;是,则依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量;遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行前述步骤,否,则判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断。
所述获取模块2,还用于:
循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复判断。
优选地,所述获取模块2,还用于:
当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复判断。
本方法充分利用了计算机图形学的方法,避免遍历所有坡面线的相交关系,并通过保存坡面线的相交关系,大大提高了无相交斜坡线的绘制效率。本方法在使用计算机制作地形图中的应用前景较为广阔。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.自动绘制斜坡线方法,其特征在于,包括步骤:
步骤A,绘制斜坡线的坡顶线、坡底线并显示,所述坡顶线为多条有向线段组成的折线段,有向线段的连接点为节点;
步骤B,依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合;
步骤C,将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示;
其中,所述步骤B中依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合,包括步骤:
步骤B1,遍历所述节点,判断遍历是否结束,结束,则执行步骤C,否,则执行步骤B2;
步骤B2,判断由当前节点连接的有向线段的方向夹角大小是否小于180°,是,则执行步骤B3,否,则跳过当前节点,继续遍历后续节点;
步骤B3,依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量;
步骤B4,遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行步骤B1,否,则执行步骤B5;
步骤B5,判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断;
其中,所述步骤B中依次遍历所述节点和所述节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合,还包括步骤:
步骤B6,循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复步骤B6。
2.根据权利要求1所述的自动绘制斜坡线方法,其特征在于,所述步骤B中获取坡面线与坡底线相交的第二坡面线集合和无相交的坡面线的第三坡面线集合,包括步骤:
步骤B7,当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复步骤B7。
3.根据权利要求2所述的自动绘制斜坡线方法,其特征在于,所述步骤B7中判断当前坡面线是否与坡底线相交,包括步骤:
检测坡顶线和坡底线构成的最小外包多边形;
当当前坡面线与所述最小外包多边形相交,则判定该坡面线与坡底线相交,否则判定无相交。
4.根据权利要求1所述的自动绘制斜坡线方法,其特征在于,所述步骤B1之前还包括步骤:
为每一条坡面线分配线序号进行标记,为每一个节点分配节点序号进行标记。
5.自动绘制斜坡线装置,其特征在于,包括绘制模块和获取模块;
所述获取模块,用于依次遍历节点和节点两侧的坡面线,获取坡面线与坡面线相交的第一坡面线集合和坡面线与坡底线相交的第二坡面线集合以及无相交的坡面线的第三坡面线集合;
所述绘制模块,用于绘制斜坡线的坡顶线、坡底线并显示,并将所述第一坡面线集合和所述第二坡面线集合中的坡面线进行剪枝后绘制并显示,将第三坡面线集合的坡面线直接绘制并显示;
其中,所述获取模块,用于:
遍历所述节点,判断遍历是否结束,结束,则执行后续步骤,否,则判断由当前节点连接的有向线段的方向夹角大小是否小于180°,否,则跳过当前节点,继续遍历后续节点;是,则依据用户指定的地形图斜坡线图式得到坡面线间隔,根据坡面线数量=有向线段长度/坡面线间隔,计算当前节点两侧坡面线数量;遍历坡面线数量相对多的一侧的坡面线,判断遍历是否结束,是,则返回执行前述步骤,否,则判断当前坡面线是否与当前节点另一侧的坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号及节点序号,并添加到所述第一坡面线集合中,并跳转到当前侧的下一条坡面线的判断,不相交则循环判断当前坡面线是否与另一侧的下一条坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,并跳转到下一条坡面线继续判断;
其中,所述获取模块,还用于:
循环判断当前坡面线是否与下一节点的另一侧坡面线相交,相交则保存当前坡面线和与之相交的坡面线的线序号和节点序号,并添加到所述第一坡面线集合中,不相交则跳到下一个节点并重复判断。
6.根据权利要求5所述的自动绘制斜坡线装置,其特征在于,所述获取模块,还用于:
当判定当前坡面线与后续所有节点的另一侧的坡面线都不相交时,则判断此坡面线是否与坡底线相交,相交则将当前坡面线添加到所述第二坡面线集合,否则添加到所述第三坡面线集合,并跳转到下一坡面线重复判断。
CN201310362595.0A 2013-08-19 2013-08-19 自动绘制斜坡线方法和装置 Active CN103413000B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310362595.0A CN103413000B (zh) 2013-08-19 2013-08-19 自动绘制斜坡线方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310362595.0A CN103413000B (zh) 2013-08-19 2013-08-19 自动绘制斜坡线方法和装置

Publications (2)

Publication Number Publication Date
CN103413000A CN103413000A (zh) 2013-11-27
CN103413000B true CN103413000B (zh) 2016-08-10

Family

ID=49606012

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310362595.0A Active CN103413000B (zh) 2013-08-19 2013-08-19 自动绘制斜坡线方法和装置

Country Status (1)

Country Link
CN (1) CN103413000B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109033681B (zh) * 2018-08-13 2019-07-05 福建省地质工程勘察院 一种边坡计算模型导入时的自动修复方法
CN111340909B (zh) * 2020-02-28 2023-06-06 嘉兴瑞眼信息科技有限公司 基于交点延长线消去无交叉法线斜坡坡面线动态生成方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467573A (zh) * 2011-06-23 2012-05-23 王尚奇 数字测图简拼编码法和内部排序法为辅的最短距离排序法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011128925A (ja) * 2009-12-18 2011-06-30 Cambria Language Service:Kk 建築物面積演算装置および方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467573A (zh) * 2011-06-23 2012-05-23 王尚奇 数字测图简拼编码法和内部排序法为辅的最短距离排序法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于ArcGIS的动态符号化设计与实现;洪安龙等;《现代测绘》;20080715;第31卷(第4期);第12-14页 *

Also Published As

Publication number Publication date
CN103413000A (zh) 2013-11-27

Similar Documents

Publication Publication Date Title
Shu-Xi The improved dijkstra's shortest path algorithm and its application
CN103745611B (zh) 一种交通路径规划方法、装置及系统
Schiele Improved compaction by minimized length of wires
CN107168697A (zh) 图形化编程软件的连线自动避障优化方法
CN103413000B (zh) 自动绘制斜坡线方法和装置
CN108489501A (zh) 一种基于智能绕过障碍的快速路径搜索算法
CN107167152A (zh) 路径规划方法和装置
CN104462352A (zh) 数据打包方法及装置
CN110095134A (zh) 一种以用户的偏好为核心的路径规划和导航的方法及系统
CN102982252A (zh) 一种高杂合二倍体基因组支架序列组装策略
CN112819211A (zh) 一种基于蚁群迭代算法的多区域调度航线规划方法
Buchhold et al. Real-time traffic assignment using fast queries in customizable contraction hierarchies
CN104794175A (zh) 基于度量k最近对的景点和酒店最佳配对方法
Leitner et al. A computational study of exact approaches for the bi-objective prize-collecting steiner tree problem
Bannister et al. Windows into geometric events: Data structures for time-windowed querying of temporal point sets
Bowater et al. Extending the Adapted PageRank Algorithm centrality model for urban street networks using non-local random walks
CN113808424A (zh) 基于双向Dijkstra的城市路网K条最短路径的获取方法
CN105698796A (zh) 一种多机器人调度系统的路径搜索方法
CN103345509B (zh) 获取路网上复反向最远邻居的层次分区树方法及系统
Wang et al. An improved a* algorithm for traffic navigation in real-time environment
CN107633024A (zh) 多维属性最优点组的快速搜索方法
Wang et al. The improved Dijkstra's shortest path algorithm
CN110347676A (zh) 基于关系r树的不确定性时态数据管理与查询方法
CN103279525B (zh) 一种基于哈希优化的多条件联动搜索方法
CN107689922A (zh) 基于微粒群算法的Steiner最优树计算方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170502

Address after: 310000, 7, building 701, 3, wisdom cube technology center, 139 Cheung Road, Hangzhou, Zhejiang, Gongshu District

Patentee after: Hangzhou Weizhi CE Technology Co. Ltd

Address before: 2002, room 310016, block A, Sam Wo Business Plaza, 238 hang Hai Road, Hangzhou, Zhejiang, Jianggan District

Patentee before: Walkinfo Technology Co., Ltd.

TR01 Transfer of patent right
CP01 Change in the name or title of a patent holder

Address after: 310000 room 701, 7 floor, 3 wisdom cube science and technology center, 139 Xiangyuan Road, Gongshu District, Hangzhou, Zhejiang.

Patentee after: Zhejiang Digital Technology Co., Ltd.

Address before: 310000 room 701, 7 floor, 3 wisdom cube science and technology center, 139 Xiangyuan Road, Gongshu District, Hangzhou, Zhejiang.

Patentee before: Hangzhou Weizhi CE Technology Co. Ltd

CP01 Change in the name or title of a patent holder