谷歌地图我们已经用了很久了,可以说它已经融到了日常生活中。在使用之余我也想试着自己做一下简单的监控程序试试。谷歌给我们开放了很灵活的接口,在应用程序的开发过程中对我的帮助很大。
Google map api的接口版本到目前为止有3个,最新的是V3版,最早的flash版的地图,V2版的地图是采用javascript的接口。我选择了V2版得API接口。要正式使用google map API还需要获得一个密码。只要你有一个Gmail的地址,还有一个顶级域名,便可以申请到密码。然后将获得的密码放到javascript的应用中就可以调用google map了。
<script src="http://maps.google.com/maps?file=api&v=2&
sensor=true_or_false&key=这里输入你的密码 " type="text/javascript"></script>
具体如何调用google map 生成对象显示,网上应该有很多介绍了。我们这里要做得是对一条航线进行导航,并且模拟当前位置的变换。
首先,我们应该具备一些HTML和Javascript的知识,其次具备一点GIS的知识那是最好的,然后需要熟悉google map的各种API。好,接下来我可以工作了。
第一步,既然做导航的模拟,先将界面布局好。
第1部分:google map地图
第2部分:导航路线添加编辑的工具栏
第3部分:导航信息部分。
界面的布局如上所示,图中蓝点的位置便是我的当前位置。第二步,如何添加一条路线。这个可以参考google map API中的GMarker函数,该函数可以将一个经纬度的点转换成标记点。然后使用bind函数绑定map的click消息处理函数,当我点击“添加”按键之后每在地图上单击一次便会添加一个标记点。最后使用Polyline函数在每个标记点间画出一条直线。
添加完成路线
第三步,如何模拟和计算出导航数据。因为是模拟,速度和方位允许自己设置。然后根据当前点的位置计算出下一个点的位置。同时动态的计算出相关的导航数据(比如偏航距和节点)。最后我们可以试着跑一下,效果还是挺好。
图中蓝色便是跑出的轨迹线,蓝点便是当前的位置。“位置”、“偏航”、“节点”会动态的更新。