最后碰到的一个令人头疼的问题就是保存文件,开始想参考第十一章的 POPPAD 程序,看来没有把这个程序吃透,就放弃了。准备使用《WINDOWS 核心编程》上面的文本框来输出生成的经纬度文件,当我安装号运行程序库并配置好,忽然发现它是 C++ 的程序,晕死了。期间还尝试过使用 C++ 的文件指针 FP,后来发现不支持!就放弃了,时间不允许我先去吃透 C++ 再来完成这个程序。后来,发现《WINDOWS 程序设计》的例程,包含的头文件是这种:#include <windows.h>,而 C++ 格式包含的头文件是:#include <iostream>,通常没有“.h”,感觉《WINDOWS 程序设计》应该还支持 Turbo C 2.0 格式下的文件读写,于是找到谭浩强同志的《C 语言程序设计》,看看它怎么弄的。之后,在 VC++ 6.0下测试了一把,通过,于是程序就基本完工了。
两个问题:
1、如何使用 Google Earth 做一条线路图 放进GPS
答:保存为.KML 格式…再使用小软件转换成你的 GPS(不知道什么牌子、型号?)能识别的格式…通过GPS管理软件传送到GPS中使用。
2、然后怎么下载www.mapinbox.com/的轨迹呢 我进去半天没搞明白
答:这个网站好象也经关闭了…
即使没有关闭,浏览轨迹这项功能好象也不能下载…,另一个功能好象叫“专题”好象可以下载, 不过没试过。可是这个网站“死”了,什么都没有…
http://www.doyouhike.net/forum/comm_nav/325548,0,0,1.html
求助 如何使用 Google Earth 做一条线路图 放进GPS
以前看见有一个帖子,上面写着有一位仁兄在偷 Google Earth 的高程数据,做等高线地图,于是在 Baidu 这样搜索 “Google Earth site:www.doyouhike.net”,搜索磨房里面所有有关“Google Earth”的帖子,那个帖子没有找到,却发现了本帖子。由于自己有时候带队,还有就是喜欢琢磨 GPS,就自己生成 KML 格式的轨迹。在“Google Earth”里面找到自己要去的地方,通过别人的资料,看看看看大致的路线,然后取一些坐标点。取点的时候,把鼠标放在“Google Earth”上,然后按“Print Screen/SysRq”键来截屏,之后,粘贴在画图里面,之后,就录入这个点的经纬度,海拔一般情况下的价值不大,就省略了。之后,把这些点导入 WPS的电子表格,利用公式把“114,31,00.18”格式的经纬度转换为“114.516716”格式,就着就手工生成 KML文件了,最后,利用 gpsbabel-1.3.6 转换成我的 GPS 识别的格式。想省钱,就在 TAOBAO 买了一个二手杂牌的 GPS,Lowrance Hunt C,不支持中文,于是采用了英文菜单,地名只好采用拼音了。这样做起来实在累,一般生成一条比较短的轨迹,花两个小时是很正常的事情。前一阵子,在学习《WINDOWS 程序设计》,于是就想参照上面的例程写一个小程序,让它自动生成附件:KML 生成软件的使用 初步1.7z
我需要的轨迹。
《WINDOWS 程序设计》的第八章的 WHATCLR 程序,它运行时候,就可以以点的方式改变其它程序的颜色,既然要改变这些点,就要知道它们相对于屏幕左上角的坐标。既然是这样,那利用相似三角形的原理,我在 “Google Earth”这样描点,知道起点和终点的坐标后,就很容易地生成一条所需要的 KML 格式的轨迹了。之后,把它导入“Google Earth”以检验这条轨迹,不合乎自己要求就重描一条,几分钟就搞定了。看来,“懒人推动社会进步”,这句话非常有道理。
其中一个问题就是,需要用按键或者鼠标来控制程序描点的开始和结束,于是参考了第六章的 KEYVIEW1 和 第七章的 BLOKOUT1,最后决定使用“a”(小写字母)座位控制键!本来想以鼠标右键来控制的,后来没有搞定,就放弃了。
最后碰到的一个令人头疼的问题就是保存文件,开始想参考第十一章的 POPPAD 程序,看来没有把这个程序吃透,就放弃了。准备使用《WINDOWS 核心编程》上面的文本框来输出生成的经纬度文件,当我安装号运行程序库并配置好,忽然发现它是 C++ 的程序,晕死了。期间还尝试过使用 C++ 的文件指针 FP,后来发现不支持!就放弃了,时间不允许我先去吃透 C++ 再来完成这个程序。后来,发现《WINDOWS 程序设计》的例程,包含的头文件是这种:#include <windows.h>,而 C++ 格式包含的头文件是:#include <iostream>,通常没有“.h”,感觉《WINDOWS 程序设计》应该还支持 Turbo C 2.0 格式下的文件读写,于是找到谭浩强同志的《C 语言程序设计》,看看它怎么弄的。之后,在 VC++ 6.0下测试了一把,通过,于是程序就基本完工了。
程序的使用,把附件的压缩包解压缩的你的硬盘的任意一个角落,在 C 盘的根目录下生成一个文本文件“START.txt”,不知道怎么生成就问你的电脑启蒙老师了。压缩包里面有一个 START.txt,可以直接修改了!然后运行 WHATCLR.exe,按一下小写字母“a”,C 盘的根目录下就生成了 startstop.kml,(可能需要刷新一下),将其导入“Google Earth”,就会发现2个点,“start”和“stop”,点 WHATCLR.exe 让它在最前面,之后把鼠标放在 “start” 处,“start” 会变大,再按一下小写字母“a”,按住鼠标左键沿着路径拖动就开始生成轨迹,当鼠标拖到 “stop”点的时候,“stop”变大,松开鼠标,同时按一下小写字母“a”完成轨迹的生成。注意,生成轨迹的时候,必须让 WHATCLR.exe 始终处在各个窗口的最前面,也就是它获得焦点!这时,在 C 盘的根目录就会发现2个 KML 文件:“GPSDATA.KML”和“GPSDATA2.KML”,把“GPSDATA.KML”导入到“Google Earth”,看是否合乎你的要求,不合要求就重来一遍,直到合乎你的要求为止。用 gpsbabel-1.3.6 把转换为你的 GPS 所支持的格式即可。
注意:由于是习作,KML 文件保存的位置默认为 C 盘,如果想存储在其它地方,可以自行修改程序。
压缩包里附有源代码。如果想知道程序为什么这么写,请问 Bill·Gates 或者是 Charles·Petzold。如果想知道 KML 文件怎么生成,请联系 Google 或者 zGPSconv.exe 的作者,我是参照 zGPSconv.exe 生成的 KML 文件来生成 KML 文件的。
附件:原始图片JPG.7z
附件:KML 生成软件的使用 初步.pdf
附件:KML 生成软件的使用 初步1.7z
附件:KML 生成软件的使用 初步2.7z
学习!
顶3楼的高人!
顺便弱弱的问一句:为何不用Google Earth自带的Add path功能画一条轨迹,然后直接保存成kml文件呢?
还要注意一个问题,GOOGLE地图的数据有偏移。。。
使用 “Google Earth”自带的“Add path”功能画轨迹
听广州的 haidao 说“Google Earth”自带的“Add path”功能,我刚开始粗略招了一下,没有看见“Add path”选项,刚开始想,也许是免费的版本没有吧。不交¥就不支持这个功能,今天沉下心来,一下就找到了:
点击红圈中的“Add path”按钮,出现下图的界面:
(可以给本条轨迹起名字/Name:本例子为羊台山,和写描述/Description:本例子为羊台山)
然后点一下路径的起点,出现一个深蓝色的起点:
继续点,就会发现每个以前点的点为红色,最新的点为绿色,所有的点按顺序连成一条白色的折线
这个是完成之后的效果图!
完成之后点对话框上的“OK”按钮,退出“Add path”模式,左边的 Places 栏有“羊台山”这条轨迹在显示:
保存生成的轨迹,右键点击新生成的“羊台山”,选择“Save as ...”
保存选项,保存类型建议选择“Kml (*.kml)”,如果你需要编辑轨迹或者是想转换为你的GPS所支持的格式的话,大多数的转换软件只支持 KML 格式,KMZ文件格式还比较新,虽然只是把 KML 文件 用ZIP方式压缩一下,但是不一定被老版本的软件支持!gpsbabel-1.3.6 和 zGPSconv.exe 只支持 KML。升级版本可能会支持 KMZ了。那时候你再保存或者转换为KMZ不迟!
在 4.38km 的高度看生成轨迹的时候,左边圈里的轨迹断了,这是由于取点比较少。不过用我的软件画的轨迹,只要你吧鼠标拖的不是足够的快,一般可以放大到很大。也许自己做的东西费了功夫,总是觉得自己的好。
结论:
“Google Earth”自带的“Add path”功能对初学者来说,还是很实用的功能。“mendyleekk”,GOOGLE地图的数据偏移(20-30米)一般可以直接作为误差处理了,不需要太过计较!
附件:使用 “Google Earth”自带的“Add path”功能画轨迹 使用的PP.7z
附件:使用 “Google Earth”自带的“Add path”功能画轨迹.7z
楼上的太强了。
赞一个
学习!
用global_mapper打开 kml,再输出成GPS常用的格式,比如GPX
我尝试在Google Earth 上add 了一段PATH ,然后存成了KML文件, 在global mapper 上打开相应区域的地形文件后拖进刚才存的KML文件, 在地形上只显示了KML文件的文件名, 并看不到有什么规迹, 是什么问题?
新版的OZI都可以直接导入KML文件啊,然后再上传到GPS就可以了
刚才试了一下: 用8楼的生成的KML文件再用gpsbabel 转成Magellan SD files (as for eXplorist) (.upt) 格式, 发现转出的结果是空的
如果先将KML文件转成GPX XML (.gpx) 文件, 用magellan 所带的mapsend lite 2.0打开工gpx文件, 软件也会提示不包含任何的route.
结果就是转出来的东西是空的还是不能在GPS使用. ---有什么办法解决?
附件8楼生成的KML文件及使用gpsbabel 1.6转换出来的GPX及magellan explorist 兴趣点文件(.upt) 向大家请教.
ge的轨迹输到gps里面好像有不少偏差的啊。不知道这个问题怎么解决?
签名收藏,慢慢学,正要这东东!
一个如此简单的问题,为什么有人会搞得那么复杂?
学习了 有视频或者图片教程那就更加好了
我用60CSX记录了一条轨迹,存为.gpx文件,在google earth中打开后如图,有偏移。
你用是官方地图吧
翻到自己的一篇旧文
http://www.sosaw.com/forum76/thread-161711-1-1.html
学习下
我试了一下,分为三个步骤:
1. 将绘制的轨迹存为 kml格式。
2. 用软件将其转为航迹文件,注意不是航线!其文件扩展名为 log,并上传上Explorist500.
3. 打开GPS,并在航迹文件包内找到那个文件,加载,选择转为航线,即可导航。
我也是一个新手,我用软件把KML文件直接转成航线文件,即rte格式的,但GPS就是识别不了,我也不知为什么。走了这个曲线后,(即让机器自己转换一下)就行了。
如果有朋友有更好的办法,请来信一起研究学习!Email: cuilubin@gmail.com
@
我的方法很简单:
http://www.doyouhike.net/forum/comm_nav/420190,0,0,0.html