本发明涉及道路位置管理,尤其涉及一种基于道路矢量数据实现经纬度换算成桩号的方法。
背景技术:
1、传统的公路建设与运营管理采用桩号进行定位。随着交通现代化的持续发展,对道路管理养护要求越来越精细,稀疏的公路桩号网络已经不能满足要求。而且主流的电子地图,都是以经纬度进行定位、导航,很有必要设计一种将经纬度换算成道路桩号的方法,支持根据经纬度实时计算获取道路所在位置的桩号。
2、在我国公路矢量数据已经得到了广泛的应用,矢量数据中包含了一组顶点数据,是道路所在位置的经纬度信息,这些信息与道路桩号有着特殊的关联。本发明就是根据桩号的定义规则,发掘公路矢量数据与桩号之间的关系,设计的一种基于道路矢量数据实现经纬度换算成桩号的方法。
技术实现思路
1、本发明的目的是为了解决现有技术中存在的缺点,而提出的一种基于道路矢量数据实现经纬度换算成桩号的方法,该方法根据道路矢量数据计算桩号,相比传统的桩号计算方法,计算效率和准确性都有很大的提升,。
2、为了实现上述目的,本发明采用了如下技术方案:
3、一种基于道路矢量数据实现经纬度换算成桩号的方法,包括以下步骤:
4、s1步骤,选取道路:计算输入经纬度所在点与道路矢量数据顶点的距离,选取距离最短顶点所在的道路记为r,其中所述经纬度所在点记为vinput,选取距离最短顶点记为vmin;
5、s2步骤,构造两条直线段:在道路r的顶点数组中选取顶点vmin前后两个顶点,分别与vmin组成两条直线段,记为l1、l2;
6、s3步骤,选择与输入点较小的直线段:分别求取vinput与l1、l2的距离,选择其中距离较小的直线段,记为l0;
7、s4步骤,求取输入点与线段的垂足:利用垂足计算方法,计算vinput与l0的垂足,记为vz;
8、s5步骤,组成新的序列:取道路r顶点数组中vmin前的所有顶点与vz组成新的序列;
9、s6步骤,计算新序列中相邻顶点的距离并求和:依次计算新序列中相邻顶点的距离,并对新序列中相邻顶点的距离进行求和,记为d;
10、s7步骤,求取桩号:求得经纬度所在点的桩号z=z0+d,其中z0为道路起始桩号。
11、进一步的,所述s1步骤中,道路矢量数据是指计算机中以矢量数据结构存贮的道路内部数据,在矢量数据结构中,道路数据简化为线数据,用均匀和/不均匀间隔的顺序坐标链来描述。
12、进一步的,所述s2步骤中,顶点数组是指顶点坐标数组,其由若干组包含有经纬度的点坐标组成。
13、进一步的,所述s4步骤中,利用垂足计算方法,计算vinput与l0的垂足,采用垂足公式进行计算。
14、进一步的,所述s5步骤中,取道路r顶点数组中vmin前的所有顶点与vz组成新的序列,其中若l0=l1,则新的序列不包含vmin,如果l0=l2,则新的序列包含vmin。
15、进一步的,所述s7步骤中,求得经纬度所在点的桩号z=z0+d,保留三位小数。
16、与现有技术相比,本发明的有益效果是:本发明所提出的换算方法根据道路矢量数据计算桩号,相比传统的桩号计算方法,计算过程简单、计算结果准确,计算效率和准确性都有很大的提升,支持获取道路上任意点的桩号,能更好的满足基于道路桩号的定位要求,为道路建设、管理和养护的工作提供便利。
1.一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,所述s1步骤中,道路矢量数据是指计算机中以矢量数据结构存贮的道路内部数据,在矢量数据结构中,道路数据简化为线数据,用均匀和/不均匀间隔的顺序坐标链来描述。
3.根据权利要求1所述的一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,所述s2步骤中,顶点数组是指顶点坐标数组,其由若干组包含有经纬度的点坐标组成。
4.根据权利要求1所述的一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,所述s4步骤中,利用垂足计算方法,计算vinput与l0的垂足,采用垂足公式进行计算。
5.根据权利要求1所述的一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,所述s5步骤中,取道路r顶点数组中vmin前的所有顶点与vz组成新的序列,其中若l0=l1,则新的序列不包含vmin,如果l0=l2,则新的序列包含vmin。
6.根据权利要求1所述的一种基于道路矢量数据实现经纬度换算成桩号的方法,其特征在于,所述s7步骤中,求得经纬度所在点的桩号z=z0+d,保留三位小数。