本发明涉及自动化测量技术领域,尤其涉及一种高尔夫球场球洞洞位图的自动生成方法与系统。
背景技术:
高尔夫球场果岭的球洞位置,通常每日或隔几日会由高尔夫球场的工作人员在果岭上进行人工移动,并且手动测量以及记录球洞的准确位置相对于果岭前缘或果岭中心的偏差值,将球场所有球洞的偏差值填入洞位图,从而制作成一份当日高尔夫球场球洞洞位图,供当日在球场打球的运动者参考球洞的具体位置。
然而,这种人工产生洞位图的方法具有以下的不足:
(1)位置定位精度不高。
(2)记录偏差值和填写洞位图的出错率高。
(3)费时费力。
技术实现要素:
针对现有技术的不足,本发明提出了一种高尔夫球场球洞洞位图的自动生成方法与系统,该自动生成方法与系统,解决了人工记录偏差值和填写洞位图出错率高的问题,并且极大提高了位置定位精度和工作效率。
本发明解决其技术问题所采用的技术方案是,一种高尔夫球场球洞洞位图的自动生成方法,包括步骤:
s1.对所有球道中心点或果岭中心点分别进行定位,并且记录各个球道中心点或果岭中心点的经纬度数据,以及将各个球道中心点或果岭中心点的经纬度数据上传至数据库进行存储。
s2.对所有果岭前缘点分别进行定位,并且记录各个果岭前缘点的经纬度数据,以及将各个果岭前缘点的经纬度数据上传至数据库进行存储。
s3.对所有当日球洞位置点分别进行定位,并且记录各个当日球洞位置点的经纬度数据,以及将各个当日球洞位置点的经纬度数据上传至数据库进行存储。
s4.读取数据库中所有球道中心点或果岭中心点的经纬度数据、所有果岭前缘点的经纬度数据、以及所有当日球洞位置点的经纬度数据。
s5.根据所计算的当前当日球洞位置点的经纬度数据,以及根据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出该个当日球洞位置点的洞位数据。
s6.将该个当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表。
s7.判断当日球洞位置点是否计算完毕,是则执行步骤s8,否则返回执行步骤s5。
s8.将当日高尔夫球场球洞洞位图表生成当日高尔夫球场球洞洞位图。
s9.保存,并且显示当日高尔夫球场球洞洞位图。
进一步的,在所述步骤s4与步骤s5之间还包括:
根据果岭前缘点的经纬度数据和当日球洞位置点的经纬度数据,将距离所计算的当前果岭前缘点最近的当日球洞归属于该个果岭的当日球洞,使得各个当日球洞位置点与各个果岭前缘点以及各个球道中心点或果岭中心点相对应。
进一步的,所述步骤s5包括:
s51.用与所计算的当前当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据构建一个直角坐标系。直角坐标系可以以球道中心点和果岭前缘点构建,也可以以果岭中心点和果岭前缘点构建。
s52.计算出地球经纬度坐标系x轴正向以逆时针方向旋转到步骤s51所构建的直角坐标系x轴正向的夹角。
s53.依据所述夹角计算出该个当日球洞位置点的偏移位置坐标。
s54.依据所述偏移位置坐标计算出该个当日球洞位置点的偏移值,所述偏移值即为洞位数据。
进一步的,所述步骤s6还包括:
对当日高尔夫球场球洞洞位图表进行保存。
进一步的,所述步骤s9之后包括:
查询当日或者往日的高尔夫球场球洞洞位图。
显示当日或者往日的高尔夫球场球洞洞位图。
打印当日或者往日的高尔夫球场球洞洞位图。
本发明解决其技术问题所采用的另一种技术方案是,一种高尔夫球场球洞洞位图的自动生成系统,该系统包括:
球道中心点获取模块,用于对所有球道中心点或果岭中心点分别进行定位,并且记录各个球道中心点或果岭中心点的经纬度数据,以及将各个球道中心点或果岭中心点的经纬度数据上传至数据库进行存储。
果岭前缘点获取模块,用于对所有果岭前缘点分别进行定位,并且记录各个果岭前缘点的经纬度数据,以及将各个果岭前缘点的经纬度数据上传至数据库进行存储。
球洞位置点获取模块,用于对所有当日球洞位置点分别进行定位,并且记录各个当日球洞位置点的经纬度数据,以及将各个当日球洞位置点的经纬度数据上传至数据库进行存储。
数据读取模块,用于读取数据库中所有球道中心点或果岭中心点的经纬度数据、所有果岭前缘点的经纬度数据、以及所有当日球洞位置点的经纬度数据。
计算模块,用于根据所计算的当前当日球洞位置点的经纬度数据,以及根据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出该个当日球洞位置点的洞位数据。
洞位数据记录模块,用于将该个当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表。
判断模块,用于判断当日球洞位置点是否计算完毕,是则执行洞位图生成模块,否则返回执行计算模块。
洞位图生成模块,用于将当日高尔夫球场球洞洞位图表生成当日高尔夫球场球洞洞位图。
保存显示模块,用于保存,并且显示当日高尔夫球场球洞洞位图。
进一步的,在所述数据读取模块与计算模块之间还包括:
归属模块,用于根据果岭前缘点的经纬度数据和当日球洞位置点的经纬度数据,将距离所计算的当前果岭前缘点最近的当日球洞归属于该个果岭的当日球洞,使得各个当日球洞位置点与各个果岭前缘点以及各个球道中心点或果岭中心点相对应。
进一步的,所述计算模块包括:
坐标系构建单元,用于与所计算的当前当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据构建一个直角坐标系。直角坐标系可以以球道中心点和果岭前缘点构建,也可以以果岭中心点和果岭前缘点构建。
夹角计算单元,用于计算出地球经纬度坐标系x轴正向以逆时针方向旋转到坐标系构建单元所构建的直角坐标系x轴正向的夹角。
偏移位置坐标计算单元,用于依据所述夹角计算出该个当日球洞位置点的偏移位置坐标。
偏移值计算单元,用于依据所述偏移位置坐标计算出该个当日球洞位置点的偏移值,所述偏移值即为洞位数据。
进一步的,所述洞位数据记录模块包括:
图表保存单元,用于对当日高尔夫球场球洞洞位图表进行保存。
进一步的,所述保存显示模块之后包括:
查询模块,用于查询当日或者往日的高尔夫球场球洞洞位图。
显示模块,用于显示当日或者往日的高尔夫球场球洞洞位图。
打印模块,用于打印当日或者往日的高尔夫球场球洞洞位图。
本发明的有益效果:
该高尔夫球场球洞洞位图的自动生成方法与系统,能够自动获取所有球道中心点或果岭中心点的经纬度数据,所有果岭前缘点的经纬度数据和所有当日球洞位置点的经纬度数据,并且根据当日球洞位置点的经纬度数据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出各个当日球洞位置点的洞位数据,以及依据各个当日球洞位置点的洞位数据自动生成当日高尔夫球场球洞洞位图,自动化程度高,无需对高尔夫球场球洞洞位进行手动测量以及手动填写洞位图,不仅省时省力,还能有效避免手动测量误差大以及错误记录偏差值和填写洞位图,此外还极大提高了位置定位精度。
附图说明
图1为本发明实施例一高尔夫球场球洞洞位图的自动生成方法的实现流程图;
图2为本发明用球道中心点和果岭前缘点进行构建的直角坐标系图;
图3为本发明地球经纬度坐标系与所构建的直角坐标系位置关系的示意图;
图4为本发明高尔夫球场球洞洞位图中一行的示意图;
图5为本发明高尔夫球场球洞洞位图的示意图。
具体实施方式
下面结合附图和实施例,进一步阐述本发明。
实施例一,一种高尔夫球场球洞洞位图的自动生成方法,如图1所示,包括以下步骤:
s1.对所有球道中心点或果岭中心点分别进行定位,并且记录各个球道中心点或果岭中心点的经纬度数据,以及将各个球道中心点或果岭中心点的经纬度数据上传至数据库进行存储。
本步骤通过测量定位设备对所有球道中心点或果岭中心点分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有球道中心点或果岭中心点分别进行定位。此步骤可一次性完成,只要球场地形地貌未发生重大变化,可间隔数月进行一次。由于采用gps高精度定位设备对所有球道中心点或果岭中心点分别进行定位,因此球道中心点或果岭中心点定位精度非常高。此步骤为高尔夫球场球洞洞位图的计算提供了基准点。
如果是获取球道中心点,则在本步骤之前要先确定各个球道中心点。工作人员确定好指定球道中心点后,只需在所确定好的球道中心点按动随身携带的gps高精度定位设备的定位按钮,该gps高精度定位设备就会对该球道中心点进行定位,从而获得该球道中心点的经纬度数据,具体如下:
设当前球场为第t个球场。
若是3杆洞,以第t个球场蓝标发球台中心为指定球道中心点at(3)点。at(3)点经纬度记录为pt(xa3,ya3),x表示当前点经度,y表示当前点纬度。
若是4杆洞,在第t个球场攻果岭前一杆的范围内找一点为球道中心点at(4)点。作为优选,以球道上的中间位置点为球道中心点at(4)点。at(4)点经纬度记录为pt(xa4,ya4),x表示当前点经度,y表示当前点纬度。
若是5杆洞,在第t个球场攻果岭前一杆的范围内找一点为球道中心点at(5)点。作为优选,以球道上的中间位置点为球道中心点at(5)点。at(5)点经纬度记录为pt(xa5,ya5),x表示当前点经度,y表示当前点纬度。
s2.对所有果岭前缘点分别进行定位,并且记录各个果岭前缘点的经纬度数据,以及将各个果岭前缘点的经纬度数据上传至数据库进行存储。
本步骤通过测量定位设备对所有果岭前缘点分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有果岭前缘点分别进行定位。此步骤可一次性完成,只要球场地形地貌未发生重大变化,可间隔数月进行一次。由于采用gps高精度定位设备对所有果岭前缘点分别进行定位,因此果岭前缘点定位精度非常高。此步骤为高尔夫球场球洞洞位图的计算提供了基准点。
工作人员只需在果岭前缘点按动随身携带的gps高精度定位设备的定位按钮,gps高精度定位设备就会对该果岭前缘点进行定位,从而获得该果岭前缘点的经纬度数据。设当前球洞为第t个球洞,设第t个球洞的果岭前缘点为et点,et点的经纬度记录为pt(xe,ye),x表示当前点经度,y表示当前点纬度。
s3.对所有当日球洞位置点分别进行定位,并且记录各个当日球洞位置点的经纬度数据,以及将各个当日球洞位置点的经纬度数据上传至数据库进行存储。
本步骤通过测量定位设备对所有当日球洞位置点分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有当日球洞位置点分别进行定位。由于采用gps高精度定位设备对所有当日球洞位置点分别进行定位,因此当日球洞位置点定位精度非常高。
工作人员只需在当日球洞位置点按动随身携带的gps高精度定位设备的定位按钮,gps高精度定位设备就会对该当日球洞位置点进行定位,从而获得该当日球洞位置点的经纬度数据。设当前球洞为第l个球洞,设第l个球洞的当日球洞位置点为cl点,cl点的经纬度记录为pl(xc,yc),x表示当前点经度,y表示当前点纬度。
s4.读取数据库中所有球道中心点或果岭中心点的经纬度数据、所有果岭前缘点的经纬度数据、以及所有当日球洞位置点的经纬度数据。
在本步骤之后以及步骤s5之前还包括:根据果岭前缘点的经纬度数据和当日球洞位置点的经纬度数据,将距离所计算的当前果岭前缘点最近的当日球洞归属于该个果岭的当日球洞,使得各个当日球洞位置点与各个果岭前缘点以及各个球道中心点或果岭中心点相对应。
设t为本球场所有球洞的总数目,读取所有果岭前缘点的经纬度数据{pt(xe,ye)|t=1,...t}和所有球洞的当日球洞位置点的经纬度数据{pl(xc,yc)|l=1,...t}之后,根据pt(xe,ye)点和pl(xc,yc)点两两之间的距离,确定果岭前缘点和当日球洞位置的关系,即最接近pt(xe,ye)点的pl(xc,yc)点应视为归属于第t个果岭的当日球洞,数学表达式为:
pt(xc,yc)=pl(xcc,ycc)
min表示取最小函数。通过上述方法将当日球洞pl(xc,yc)归属于相对应的果岭,位置为pt(xc,yc)。
s5.根据所计算的当前当日球洞位置点的经纬度数据,以及根据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出该个当日球洞位置点的洞位数据。
在本步骤中,所述计算出该个当日球洞位置点的洞位数据的计算方法包括但不限于坐标转换计算方法、直接距离计算方法、角度计算方法等。优选地,本实施例采用坐标转换计算方法,该计算方法包括以下步骤:
s51.用与所计算的当前当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据构建一个直角坐标系。直角坐标系可以以球道中心点和果岭前缘点构建,也可以以果岭中心点和果岭前缘点构建。
如图2所示,以果岭前缘点e点为原点,从球道指定中心点a向果岭前缘点e做一连线构成y轴,以从a到e的方向为y轴正向,从e点做一直线垂直于y轴构成x轴,以y轴正向的顺时针旋转π/2方向为x轴正向,构造一个以e点为原点的ae直角坐标系。
s52.计算出地球经纬度坐标系x轴正向以逆时针方向旋转到步骤s51所构建的直角坐标系x轴正向的夹角。
如图3所示,以正北方向为地球经纬度坐标系y轴正向,由a、e点经纬度坐标可得地球经纬度坐标系x轴正向以逆时针方向旋转到ae直角坐标系x轴正向的夹角θ为:
若xe-xa>0且ye-ya>0,则
若xe-xa<0且ye-ya>0,则
若ye-ya<0,则
若xe-xa=0且ye-ya≥0则θ=0
若xe-xa=0且ye-ya<0则θ=π
若ye-ya=0且xe-xa>0则
若ye-ya=0且xe-xa<0则
s53.依据所述夹角计算出该个当日球洞位置点的偏移位置坐标。
即,当前第t个球洞的当日球洞位置c点偏移位置坐标p(xm,ym)为:
xm=(xc-xe)cosθ+(yc-ye)sinθ;
ym=-(xc-xe)sinθ+(yc-ye)cosθ。
s54.依据所述偏移位置坐标计算出该个当日球洞位置点的偏移值,所述偏移值即为洞位数据。
即,当前第t个球洞的当日球洞位置c点偏移值(x,y)为:
x=xmtx;
y=ymty。
tx是当前经纬度下每一经度对应的地球表面距离(以码为单位),ty是当前经纬度下每一纬度对应的地球表面距离(以码为单位)。
s6.将该个当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表。
在本步骤中还包括:对当日高尔夫球场球洞洞位图表进行保存。
由于坐标轴原点在e点,故必有y≥0;
若x>0,将绝对值|x|填入position栏右边写为|x|r;
若x<0,将绝对值|x|填入position栏右边写为|x|l;
若x=0,则在position栏右边填入0;
将y值填入position栏左边。如图4所示。将数值填入到当日高尔夫球场球洞洞位图表后对当日高尔夫球场球洞洞位图表进行保存。
s7.判断当日球洞位置点是否计算完毕,是则执行步骤s8,否则返回执行步骤s5。
本实施例是对所有当日球洞位置点进行逐一计算,并且每计算获得一个当日球洞位置点的洞位数据后就将洞位数据记录到当日高尔夫球场球洞洞位图表,因此对所有球洞重复执行步骤s5到步骤s6,直到将所有当日球洞位置点计算完毕。
s8.将当日高尔夫球场球洞洞位图表生成当日高尔夫球场球洞洞位图。
当所有当日球洞位置点计算完毕,并且将所有当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表后系统自动生成当日高尔夫球场球洞洞位图,当日高尔夫球场球洞洞位图表如图5所示。
s9.保存,并且显示当日高尔夫球场球洞洞位图。
在本步骤之后包括:
查询当日或者往日的高尔夫球场球洞洞位图;
显示当日或者往日的高尔夫球场球洞洞位图;
打印当日或者往日的高尔夫球场球洞洞位图。
客户可以随时查询当日或者往日的高尔夫球场球洞洞位图,当接收到查询指令后,系统自动查询并读取客户输入指定日期的高尔夫球场球洞洞位图,并且将客户输入指定日期的高尔夫球场球洞洞位图输出到显示屏让客户观看,或将指定日期的高尔夫球场球洞洞位图打印为印刷品供客户使用。
本实施例通过获取所有球道中心点或果岭中心点的经纬度数据,所有果岭前缘点的经纬度数据和所有当日球洞位置点的经纬度数据,并且根据当日球洞位置点的经纬度数据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出各个当日球洞位置点的洞位数据,以及依据各个当日球洞位置点的洞位数据自动生成当日高尔夫球场球洞洞位图,自动化程度高,无需对高尔夫球场球洞洞位进行手动测量以及手动填写洞位图,不仅省时省力,还能有效避免手动测量误差大以及错误记录偏差值和填写洞位图,此外还提高了球洞位置定位精度。
实施例二,一种高尔夫球场球洞洞位图的自动生成系统,包括:
模块1,球道中心点获取模块,用于对所有球道中心点或果岭中心点分别进行定位,并且记录各个球道中心点或果岭中心点的经纬度数据,以及将各个球道中心点或果岭中心点的经纬度数据上传至数据库进行存储。
本模块通过测量定位设备对所有球道中心点或果岭中心分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有球道中心点或果岭中心分别进行定位。此模块可一次性完成,只要球场地形地貌未发生重大变化,可间隔数月进行一次。由于采用gps高精度定位设备对所有球道中心点或果岭中心分别进行定位,因此球道中心点或果岭中心定位精度非常高。此模块为高尔夫球场球洞洞位图的计算提供了基准点。
如果是获取球道中心点,则在本模块之前要先确定各个球道中心点。工作人员确定好指定球道中心点后,只需在所确定好的球道中心点按动随身携带的gps高精度定位设备的定位按钮,该gps高精度定位设备就会对该球道中心点进行定位,从而获得该球道中心点的经纬度数据,具体如下:
设当前球场为第t个球场。
若是3杆洞,以第t个球场蓝标发球台中心为指定球道中心点at(3)点。at(3)点经纬度记录为pt(xa3,ya3),x表示当前点经度,y表示当前点纬度。
若是4杆洞,在第t个球场攻果岭前一杆的范围内找一点为球道中心点at(4)点。作为优选,以球道上的中间位置点为球道中心点at(4)点。at(4)点经纬度记录为pt(xa4,ya4),x表示当前点经度,y表示当前点纬度。
若是5杆洞,在第t个球场攻果岭前一杆的范围内找一点为球道中心点at(5)点。作为优选,以球道上的中间位置点为球道中心点at(5)点。at(5)点经纬度记录为pt(xa5,ya5),x表示当前点经度,y表示当前点纬度。
模块2,果岭前缘点获取模块,用于对所有果岭前缘点分别进行定位,并且记录各个果岭前缘点的经纬度数据,以及将各个果岭前缘点的经纬度数据上传至数据库进行存储。
本模块通过测量定位设备对所有果岭前缘点分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有果岭前缘点分别进行定位。此模块可一次性完成,只要球场地形地貌未发生重大变化,可间隔数月进行一次。由于采用gps高精度定位设备对所有果岭前缘点分别进行定位,因此果岭前缘点定位精度非常高。此模块为高尔夫球场球洞洞位图的计算提供了基准点。
工作人员只需在果岭前缘点按动随身携带的gps高精度定位设备的定位按钮,gps高精度定位设备就会对该果岭前缘点进行定位,从而获得该果岭前缘点的经纬度数据。设当前球洞为第t个球洞,设第t个球洞的果岭前缘点为et点,et点的经纬度记录为pt(xe,ye),x表示当前点经度,y表示当前点纬度。
模块3,球洞位置点获取模块,用于对所有当日球洞位置点分别进行定位,并且记录各个当日球洞位置点的经纬度数据,以及将各个当日球洞位置点的经纬度数据上传至数据库进行存储。
本模块通过测量定位设备对所有当日球洞位置点分别进行定位,所述测量定位设备包括但不限于gps高精度定位设备、卫星实景定位地图、测距仪等。优选地,本实施例采用gps高精度定位设备对所有当日球洞位置点分别进行定位。由于采用gps高精度定位设备对所有当日球洞位置点分别进行定位,因此当日球洞位置点定位精度非常高。
工作人员只需在当日球洞位置点按动随身携带的gps高精度定位设备的定位按钮,gps高精度定位设备就会对该当日球洞位置点进行定位,从而获得该当日球洞位置点的经纬度数据。设当前球洞为第l个球洞,设第l个球洞的当日球洞位置点为cl点,cl点的经纬度记录为pl(xc,yc),x表示当前点经度,y表示当前点纬度。
模块4,数据读取模块,用于读取数据库中所有球道中心点或果岭中心点的经纬度数据、所有果岭前缘点的经纬度数据、以及所有当日球洞位置点的经纬度数据。
在本模块之后以及模块5之前还包括:归属模块,用于根据果岭前缘点的经纬度数据和当日球洞位置点的经纬度数据,将距离所计算的当前果岭前缘点最近的当日球洞归属于该个果岭的当日球洞,使得各个当日球洞位置点与各个果岭前缘点以及各个球道中心点或果岭中心点相对应。
设t为本球场所有球洞的总数目,读取所有果岭前缘点的经纬度数据{pt(xe,ye)|t=1,...t}和所有球洞的当日球洞位置点的经纬度数据{pl(xc,yc)|l=1,...t}之后,根据pt(xe,ye)点和pl(xc,yc)点两两之间的距离,确定果岭前缘点和当日球洞位置的关系,即最接近pt(xe,ye)点的pl(xc,yc)点应视为归属于第t个果岭的当日球洞,数学表达式为:
pt(xc,yc)=pl(xcc,ycc)
min表示取最小函数。通过上述方法将当日球洞pl(xc,yc)归属于相对应的果岭,位置为pt(xc,yc)。
模块5,计算模块,用于根据所计算的当前当日球洞位置点的经纬度数据,以及根据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出该个当日球洞位置点的洞位数据。
在本模块中,所述计算出该个当日球洞位置点的洞位数据的计算方法包括但不限于坐标转换计算方法、直接距离计算方法、角度计算方法等。优选地,本实施例采用坐标转换计算方法,在本模块中包括:
单元51,坐标系构建单元,用于用与所计算的当前当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据构建一个直角坐标系。直角坐标系可以以球道中心点和果岭前缘点构建,也可以以果岭中心点和果岭前缘点构建。
如图2所示,以果岭前缘点e点为原点,从球道指定中心点a向果岭前缘点e做一连线构成y轴,以从a到e的方向为y轴正向,从e点做一直线垂直于y轴构成x轴,以y轴正向的顺时针旋转π/2方向为x轴正向,构造一个以e点为原点的ae直角坐标系。
单元52,夹角计算单元,用于计算出地球经纬度坐标系x轴正向以逆时针方向旋转到单元51所构建的直角坐标系x轴正向的夹角。
如图3所示,以正北方向为地球经纬度坐标系y轴正向,由a、e点经纬度坐标可得地球经纬度坐标系x轴正向以逆时针方向旋转到ae直角坐标系x轴正向的夹角θ为:
若xe-xa>0且ye-ya>0,则
若xe-xa<0且ye-ya>0,则
若ye-ya<0,则
若xe-xa=0且ye-ya≥0则θ=0
若xe-xa=0且ye-ya<0则θ=π
若ye-ya=0且xe-xa>0则
若ye-ya=0且xe-xa<0则
单元53,偏移位置坐标计算单元,用于依据所述夹角计算出该个当日球洞位置点的偏移位置坐标。
即,当前第t个球洞的当日球洞位置c点偏移位置坐标p(xm,ym)为:
xm=(xc-xe)cosθ+(yc-ye)sinθ;
ym=-(xc-xe)sinθ+(yc-ye)cosθ。
单元54,偏移值计算单元,用于依据所述偏移位置坐标计算出该个当日球洞位置点的偏移值,所述偏移值即为洞位数据。
即,当前第t个球洞的当日球洞位置c点偏移值(x,y)为:
x=xmtx;
y=ymty。
tx是当前经纬度下每一经度对应的地球表面距离(以码为单位),ty是当前经纬度下每一纬度对应的地球表面距离(以码为单位)。
模块6,洞位数据记录模块,用于将该个当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表。
在本模块中还包括:图表保存单元,用于对当日高尔夫球场球洞洞位图表进行保存。
由于坐标轴原点在e点,故必有y≥0;
若x>0,将绝对值|x|填入position栏右边写为|x|r;
若x<0,将绝对值|x|填入position栏右边写为|x|l;
若x=0,则在position栏右边填入0;
将y值填入position栏左边。如图4所示。将数值填入到当日高尔夫球场球洞洞位图表后对当日高尔夫球场球洞洞位图表进行保存。
模块7,判断模块,用于判断当日球洞位置点是否计算完毕,是则执行模块8,否则返回执行模块5。
本实施例是对所有当日球洞位置点进行逐一计算,并且每计算获得一个当日球洞位置点的洞位数据后就将洞位数据记录到当日高尔夫球场球洞洞位图表,因此对所有球洞重复执行模块5到模块6,直到将所有当日球洞位置点计算完毕。
模块8,洞位图生成模块,用于将当日高尔夫球场球洞洞位图表生成当日高尔夫球场球洞洞位图。
当所有当日球洞位置点计算完毕,并且将所有当日球洞位置点的洞位数据记录到当日高尔夫球场球洞洞位图表后系统自动生成当日高尔夫球场球洞洞位图,当日高尔夫球场球洞洞位图表如图5所示。
模块9,保存显示模块,用于保存,并且显示当日高尔夫球场球洞洞位图。
在本模块之后包括:
查询模块,用于查询当日或者往日的高尔夫球场球洞洞位图;
显示模块,用于显示当日或者往日的高尔夫球场球洞洞位图;
打印模块,用于打印当日或者往日的高尔夫球场球洞洞位图。
客户可以随时查询当日或者往日的高尔夫球场球洞洞位图,当接收到查询指令后,系统自动查询并读取客户输入指定日期的高尔夫球场球洞洞位图,并且将客户输入指定日期的高尔夫球场球洞洞位图输出到显示屏让客户观看,或将指定日期的高尔夫球场球洞洞位图打印为印刷品供客户使用。
本实施例通过获取所有球道中心点或果岭中心点的经纬度数据,所有果岭前缘点的经纬度数据和所有当日球洞位置点的经纬度数据,并且根据当日球洞位置点的经纬度数据与该个当日球洞位置点相对应的球道中心点或果岭中心点的经纬度数据和果岭前缘点的经纬度数据计算出各个当日球洞位置点的洞位数据,以及依据各个当日球洞位置点的洞位数据自动生成当日高尔夫球场球洞洞位图,自动化程度高,无需对高尔夫球场球洞洞位进行手动测量以及手动填写洞位图,不仅省时省力,还能有效避免手动测量误差大以及错误记录偏差值和填写洞位图,此外还提高了球洞位置定位精度。
以上所述的仅是本发明的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的基本构思的前提下直接导出或联想到的其它改进和变化均应认为包含在本发明的保护范围之内。