抛开谷歌地图的表现层面展示技术外,有一个较为之重要的核心数据就是地点的经纬度的获取和记录。
谷歌地图有提供到一个某地点经纬度的查询接口API
geocoder = new GClientGeocoder();geocoder.getLocations(
'中国广东省广州市天河体育中心',
function($){
var lalton = $.Placemark[0].Point.coordinates;
alert(latlon[0]+","+latlon[1]);
});
在应用每次获取具体地点的经纬度的时候,通过这个接口在Google 地图的庞大数据库中查询到的经纬度,有时候并不如意,尤其表现在一个非知名建筑群或者地点的时候。而且每次查询Google地图数据库数据的时候必定会耗时。但如果对精度和表现形式不太在意的时候,并且是非常庞大的数据,和简单的地点查询的时候,每次获取地点经纬度采用向google 查询,是完全可以解决问题。
当什么时候需要建立我们的自己的经纬度数据库呢?
1.对经纬度精度要求高;
2.地点经纬度记录固定,一次记录无需多次往google查询;
3.地点经纬度频繁被使用。
出现以上的情况,建立自己的经纬度数据库是非常有用的,具体表现在展示一些消费场所具体所在地、物流送货到达站点展示,公司/营销地网络分布点展示。
如何获取经纬度数据比较合适?
1.经纬度数量庞大,或者需要一次性初始化的时候,可以通过API查询->记录入库的方式来记录,但是比较粗狂;
2.手工添加,在精确度要求很高,容错率很低的时候,采用人工查询和添加,这个有点耗时,但是这个工作是一次性完成,成本大,但实用。
总之建立自己的经纬度数据库是为了让用户的体验性更强,并不是一个轻松的工作。
本帖仅是抛砖引玉,有点粗糙,欢迎更多从事谷歌地图开发的朋友来探讨和分享一下在开发过程中,经纬度数据这一块的经验。
|