谷歌地图利用JS实现经纬度和地理位置之间相互转换的实现
google.maps.Geocoder
地理编码是将地址(如“1600 Amphitheatre Parkway, Mountain View, CA”)转换为地理坐标(如纬度 37.423021 和经度 -122.083739)的过程。
     核心代码:

/**
 * 经纬度转地理位置
 */
$('#map_latlng_to_address').click(function () {

	var myLatlng = new google.maps.LatLng(34.2435947296974, 108.95278930664062);
	var geocoder = new google.maps.Geocoder();
	geocoder.geocode( { 'location': myLatlng}, function(results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			notificationGo("消息提示", "经纬度转地理位置:" + results[0].formatted_address);
		} else {
			alert('Geocode was not successful for the following reason: ' + status);
		}
	});

});
    效果:
    
反向地理编码是将地理坐标转换为可人工读取的地址的过程。Google Maps Geocoding API 的反向地理编码服务还可让您找到对应于给定的地点 ID 的地址。
     核心代码:

/**
 * 地理位置转经纬度
 */
$('#map_address_to_latlng').click(function () {
	var address = "中国陕西省西安市碑林区二环路沿线商业经济带南郭路31号";
	var geocoder = new google.maps.Geocoder();
	geocoder.geocode( { 'address': address}, function(results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			notificationGo("消息提示", "地理位置转经纬度:" + results[0].geometry.location.lat()+' , '+results[0].geometry.location.lng());
		} else {
			alert('Geocode was not successful for the following reason: ' + status);
		}
	});
});
    效果:
    
注:以上代码中,notificationShow() 是一个自己封装的输出方法,功能 类似与 alert()
WebService的调用URL:
下面这两个地址,可以直接在浏览器的地址栏中输入出现结果:
这个就是 经纬度转地址
这个就是 地址转经纬度
更多关于谷歌地图地理编码的资料,可以查阅官方的API:https://developers.google.cn/maps/documentation/geocoding/intro

标签: Google地图, Google地理编码互转, Google地图地理编码, 地图地理编码

添加新评论