自编的GPS轨迹转换和纠偏软件<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
2009.10
花了很长时间做这个转换软件,其中又踫到需要纠偏的轨迹,有幸看到这篇文章
http://blog.sina.com.cn/s/blog_537b0cb10100e22g.html
并且知道了小胖熊的贴子,采用查表法进行纠偏:
http://bbs.sosaw.com/dispbbs.asp?boardid=43&id=144107&page=1&star=1
从中找到了纠偏的表格table.txt,而且源代码中也有还原子程序,谢谢相关作者。
这样在我的转换软件中,增加了纠偏还原和加偏火星坐标的功能。经过试用,全部还原得很好,在厦门、北京、济南都很正常。
纠偏原理:主要是用了InitTable()和FixCoordinate()这二个子程序。FixCoordinate是用来纠偏的,即火星坐标还原成真实坐标。table.txt中存放的是相对应于真实坐标的偏移后的坐标。
我的软件主要功能是将手机N73中的GPS软件记录的轨迹进行转换,主要是GPSTOY和乐图的轨迹,同时加入我自定义的格式.wrt文件,和Data Logger iBlue747 csv格式的.csv文件(也是文本文件,可以用EXCEL打开)。
这个iBlue747格式在GPSBABEL中可以找到,别的格式的轨迹可以通过GPSBABEL转换成iBlue747格式,从而能在我的软件中打开和转换。
我自定义的格式.wrt文件,是文本文件,可以很方便地在记事本中进行编辑。
轨迹会先导入到内存中,再看是否纠偏或加偏,然后再保存成其它格式。
保存的格式支持GE的KML,这个是我主要开发这个软件的目的。
因为GPX格式导入GOOGLE EARTH,没有航点信息,只有PATH。用KML格式,就都会有了。但是GPSBABEL生成的KML,航点信息是英制的,挺别扭,而且好像没有高度值。
我这个软件保存的KML,可以有航点信息,可以播放轨迹。也有PATH,有高度信息,而且是公制的,因此在GE中导入后,查看很方便。
为了使软件“和谐”,软件中没有附table.txt文件,请去上面的小胖熊贴子的链接中下载这个文件,并放在本软件的同一目录中就可以了。
采用VC6开发,本人非专业编程人员,为菜鸟级别,业余开发,但可保证没有病毒。有兴趣的朋友可以一试。有问题可反馈wxlwww@gmail.com。
另外对于FixCoordinate这个子程序的算法不太明白,知道是反查表用的,但算法原理有点看不懂,哪位高人能否解释一下?
软件下载地址:
https://static.assets-stash.eet-china.com/album/old-resources/2009/11/11/d8d4b560-8fb2-42b4-abf1-e59cabeda537.rar
======================
发一个测试用的轨迹,大家可以试用下。
https://static.assets-stash.eet-china.com/album/old-resources/2010/1/2/6c9a549a-140d-4e7d-b1c7-50476b32a79c.rar
wxleasyland 2009-12-18 14:13
用户134804 2009-12-13 17:23