前两天,有小伙伴反馈说路线软件DWG转KML功能在西经时完全不正确。西经20°、东经160°是东西半球的分界线。这个工具是2013年开发的,当时肯定没有想到我们的小伙伴居然干到非洲去,干到西经所在区域了。软件不能用,也就在情理之中。
既然如此,我研究一下,实在不行就修改代码来适应西经范围内的情况。拿谷歌地球分析了一下,东经自0°经线往东是递增的,能够正常计算。西经自0°经线往西是递增的,恰好相反,不能使用无比正常。经过仔细研究,在经度前加个负号,将0°经线自东往西增加,变为自西往东增加,与东侧一致,试一试就知道结果。将转换的参考点的经度17°24′31.48″,输入的数值为17.243148,改为-17.243148后,转换后的KML妥妥的落在了非洲塞内加尔最西端的城市达喀尔(达卡)城区,这里也是非洲大陆的最西端。看到正确结果后,很开心,居然不用改代码就简单解决了。顺带说一句,大家对达喀尔不知道,但很多人一定听说过达喀尔拉力赛,其终点就是在这里。
图1 谷歌地球达卡放大图
图2 谷歌地图达卡KML全景图
软件使用需要不断的研究和拓展,对软件开发者如此,对于软件使用者同样如此。
网友评论