交路车站防重叠绘制方法

文档序号:9766033阅读:187来源:国知局
交路车站防重叠绘制方法
【技术领域】
[0001]本发明涉及一种交路车站的防重叠绘制方法。
【背景技术】
[0002]在线路图上,具有许多的交路,当机车运行时,司机在机车线路图上勾选交路,机车运行的交路的支线和主线均可以在线路上显示出来,而如果不采取任何防碰撞交叉的方法防止支线和主线的错误交叉,生成的交路图在美观和正确定性上均有一定的影响。

【发明内容】

[0003]本发明要解决的技术问题在于提供一种交路车站防重叠绘制方法,以解决现有技术存在的问题。
[0004]为解决上述技术问题,本发明采用以下技术方案:
交路车站防重叠绘制方法,包括:
(1)从机车的线路图数据库中获取需要的交路站点数据的主线站点数据和该主线的支线站点数据;
(2)在交路图中,根据获取的主线站点数据对交路的主线进行绘制;
(3)根据获取的支线站点对主线的支线进行绘制;
(4)遍历支线和主线的站点,获取支线与主线的起始交汇站点作为支线绘制的起始站点,获取起始站点在图中的X坐标值或Y坐标值;
将主线站点进行划分,划分为若干个站点集,对每个站点集的数据求取包围它们的最小主线矩形区域;
(6)对起始站点的下一个站点,判断与起始站点组成的矩形与主线的矩形是否碰撞,无碰撞的话开始检测下一个站点与该站点形成的矩形与主线形成的矩形是否发生碰撞;碰撞的话则对该站点的Y坐标值或X坐标值值按照设定的阈值进行调整,获取新的站点位置,进一步判断调整过的站点与起始点形成的矩形与主线的矩形是否碰撞,重复上述过程,直到不碰撞,获取该站点的新的站点位置,检测下一个站点与该信的站点的位置形成的矩形是否与主线的举行发生碰撞;
(7)对每条支线的所有站点,均按照(6)的方法检测是否发生碰撞,对所有发生碰撞的站点的坐标进行调整,获取调整过的交路图中的支线。
[0005]所述在对主线矩形区域和每条支线的矩形区域进行碰撞检测后,再对支线与支线之间进行碰撞检测,即判断两条支线的起始站点和终止站点之间的线路坐标是否有重合的X坐标段或Y坐标段,如果有,则获取重合的X坐标段或Y坐标段之间的重合线路,分别提取两条重合线路上的所有站点作为进行检测的路段的碰撞检测站点,以其中一条重合线路为临时的主线,对另一条重合线路的碰撞检测站点形成的线路重复(5)?(6)步骤中的碰撞检测并进行调整。
[0006]所述主线站点进行划分时,每个站点集形成的主线矩形区域中,站点均位于矩形区域的边上。
[0007]所述步骤(4)中,当主线站点沿X轴方向作为里程方向绘制时,(6)中碰撞的话对站点的Y坐标值进行调整;当主线站点沿Y轴方向作为里程方向绘制时,(6)中碰撞的话对站点的X坐标值进行调整。
[0008]所述判断两个矩形发生碰撞的方法为:对矩形Rl和R2,他们的左上角的坐标为(Left,Top),右下角的坐标为(Right,Bottom),如果在Rl的Right大于R2的Left与Rl的Left小于R2的Right同时成立的前提下,Rl的Bottom大于R2的Top与Rl的Top小于R2的Bottom同时成立,则Rl与R2发生碰撞。
[0009]本发明的有益效果:本发明在生成线路图后,当司机从线路图上勾选出交路的主线和支线后的绘制过程中,有效地防止主线和支线、支线和支线的重合,提供美观可靠的交路车站图。
【附图说明】
[0010]图1为本发明的流程图。
【具体实施方式】
[0011]本发明提供一种在线路图上勾选交路以后,使生成的交路图的主线和支线不会发生重叠的防碰撞检测绘制方法。
[0012]首先需要从机车的线路图数据库中获取需要的交路站点数据的主线站点数据和该主线的支线站点数据。
[0013]将一条主线的所有站点进行划分,划分为若干个站点集,对每个站点集的数据求取包围它们的最小主线矩形区域;划分时,应当按照交路绘制的里程走向进行划分,即将线路图的一个角作为坐标原点的话,那么沿X轴的方向或者Y轴的方向进行划分。
[0014]作为一种实施例,下述实施过程中,假设交路车站在绘制时沿X轴正向作为里程增加的方向绘制,为了有更高的准确性,在主线站点进行划分时,每个站点集形成的主线矩形区域中,站点均应位于矩形区域的矩形边上。
[0015]本发明的主要步骤如下:
(1)根据获取的支线站点对主线的支线进行绘制;
(2)遍历支线和主线的站点,获取支线与主线的起始交汇站点作为支线绘制的起始站点,获取起始站点在图中的X坐标值;
(3)将主线站点进行划分,划分为若干个站点集,对每个站点集的数据求取包围它们的最小主线矩形区域;
(4)对起始站点的下一个站点,判断与起始站点组成的矩形与主线的矩形是否碰撞,无碰撞的话开始检测下一个站点与该站点形成的矩形与主线形成的矩形是否发生碰撞;碰撞的话则对该站点的Y坐标值按照设定的阈值进行调整,获取新的站点位置,进一步判断调整过的站点与起始点形成的矩形与主线的矩形是否碰撞,重复上述过程,直到不碰撞,获取该站点的新的站点位置,检测下一个站点与该信的站点的位置形成的矩形是否与主线的举行发生碰撞;上述的设定的阈值为Y坐标值每次移动的距离。
[0016]本步骤中,也可以将起始站点作为支线与主线的起始交汇站点的下一个站点。
[0017](5)对每条支线的所有站点,均按照(4)的方法检测是否发生碰撞,对所有发生碰撞的站点的坐标进行调整,获取调整过的交路图中的支线。
[0018]在对所有的主线矩形区域和每条支线的矩形区域进行碰撞检测后,为了防止主线和支线之间也具有重叠,可以对支线与支线之间进行碰撞检测。它的判断方法为判断两条支线的起始站点和终止站点之间的线路坐标是否有重合的X坐标值段,如果有,则获取重合的X坐标段之间的重合线路,分别提取两条重合线路上的所有站点作为进行检测的路段的碰撞检测站点,以其中一条重合线路为临时的主线,对另一条重合线路的碰撞检测站点形成的线路重复(3)?(4)步骤中的碰撞检测并进行调整。在直线与直线进行碰撞检测调整站点坐标时,为了能够节省时间,获取两个重合的X坐标段之间的重合线路以后,选取距离交路图中的主线的Y值距离较近的重合线路作为临时的主线。
[0019]在不同的实施例中,当主线站点沿X轴方向作为里程方向绘制时,对站点的Y坐标值进行调整;当主线站点沿Y轴方向作为里程方向绘制时,对站点的X坐标值进行调整。
[0020]判断两个矩形发生碰撞的方法为:以左上角为坐标原点的图像坐标系中,对矩形Rl和R2,它们的左上角的坐标为(Left,Top),右下角的坐标为(Right ,Bottom),如果在Rl的Right大于R2的Left与Rl的Left小于R2的Right同时成立的前提下,Rl的Bottom大于R2的Top与Rl的Top小于R2的Bottom也同时成立,则Rl与R2发生碰撞。
作为一个实施程序的实施例,Rl和R2的碰撞判断方法可以写为:
Funct1n CheckHit(Rl,R2:TRectF):BoolenaBeginResult:=false;
If ((R1.Right>R2.Left) and (R1.Left<R2.Right) then Begin
If ((R1.Bottom>R2.Top) and (R1.Top〈R2.Bottom)) then
Result:=true;
end
End
其中true代表发生碰撞D
【主权项】
1.交路车站防重叠绘制方法,其特征在于,包括: (1)从机车的线路图数据库中获取需要的交路站点数据的主线站点数据和该主线的支线站点数据; (2)在交路图中,根据获取的主线站点数据对交路的主线进行绘制; (3)根据获取的支线站点对主线的支线进行绘制; (4)遍历支线和主线的站点,获取支线与主线的起始交汇站点作为支线绘制的起始站点,获取起始站点在图中的X坐标值或Y坐标值; 将主线站点进行划分,划分为若干个站点集,对每个站点集的数据求取包围它们的最小主线矩形区域; (6 )对起始站点的下一个站点,判断与起始站点组成的矩形与主线的矩形是否碰撞,无碰撞的话开始检测下一个站点与该站点形成的矩形与主线形成的矩形是否发生碰撞;碰撞的话则对该站点的Y坐标值或X坐标值值按照设定的阈值进行调整,获取新的站点位置,进一步判断调整过的站点与起始点形成的矩形与主线的矩形是否碰撞,重复上述过程,直到不碰撞,获取该站点的新的站点位置,检测下一个站点与该信的站点的位置形成的矩形是否与主线的举行发生碰撞; (7)对每条支线的所有站点,均按照(6)的方法检测是否发生碰撞,对所有发生碰撞的站点的坐标进行调整,获取调整过的交路图中的支线。2.根据权利要求1所述的交路车站防重叠绘制方法,其特征在于:所述在对主线矩形区域和每条支线的矩形区域进行碰撞检测后,再对支线与支线之间进行碰撞检测,即判断两条支线的起始站点和终止站点之间的线路坐标是否有重合的X坐标段或Y坐标段,如果有,则获取重合的X坐标段或Y坐标段之间的重合线路,分别提取两条重合线路上的所有站点作为进行检测的路段的碰撞检测站点,以其中一条重合线路为临时的主线,对另一条重合线路的碰撞检测站点形成的线路重复(5)~(6)步骤中的碰撞检测并进行调整。3.根据权利要求1所述的交路车站防重叠绘制方法,其特征在于:所述主线站点进行划分时,每个站点集形成的主线矩形区域中,站点均位于矩形区域的边上。4.根据权利要求1或2所述的交路车站防重叠绘制方法,其特征在于:所述步骤(4)中,当主线站点沿X轴方向作为里程方向绘制时,(6)中碰撞的话对站点的Y坐标值进行调整;当主线站点沿Y轴方向作为里程方向绘制时,(6)中碰撞的话对站点的X坐标值进行调整。5.根据权利要求1所述的交路车站防重叠绘制方法,其特征在于:所述判断两个矩形发生碰撞的方法为:对矩形Rl和R2,他们的左上角的坐标为(Left,Top ),右下角的坐标为(Right ,Bottom),如果在Rl的Right大于R2的Left与Rl的Left小于R2的Right同时成立的前提下,Rl的Bottom大于R2的Top与Rl的Top小于R2的Bottom同时成立,则Rl与R2发生碰撞。
【专利摘要】交路车站防重叠绘制方法,包括:从机车的线路图数据库中获取需要的交路站点数据的主线站点数据和该主线的支线站点数据;绘制主线和支线;将主线站点划分为若干个站点集,对每个站点集的数据求取包围它们的最小主线矩形区域;同时对支线站点划分矩形,判断主线形成的矩形与直线形成的矩形是否相撞,相撞则移动站点位置。本发明在生成线路图后,当司机从线路图上勾选出交路的主线和支线后的绘制过程中,有效地防止主线和支线、支线和支线的重合,提供美观可靠的交路车站图。
【IPC分类】G06F17/30
【公开号】CN105528435
【申请号】CN201510954104
【发明人】雷亚歌, 尚会领, 张斌
【申请人】河南思维自动化设备股份有限公司
【公开日】2016年4月27日
【申请日】2015年12月20日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1