1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
| var geocoder = new google.maps.Geocoder();
function getLatLng(adr, func)
{
if(adr != '' && geocoder)
{
geocoder.geocode({ address: adr }, function(points, status)
{
if(status == google.maps.GeocoderStatus.OK && points[0])
{
var coords = [ points[0].geometry.location.lat(), points[0].geometry.location.lng() ];
func(coords);
}
else
{
func(null);
}
});
}
}
function getAdress(lat, lng, func)
{
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({latLng: latlng}, function(results, status)
{
if(status == google.maps.GeocoderStatus.OK && results[0])
{
var street_number = null;
var route = null;
var locality = null;
var administrative_area_level_2 = null;
var administrative_area_level_1 = null;
var postal_code = null;
var country = null;
var elt = results[0].address_components;
for(i in elt)
{
if(elt[i].types[0] == 'street_number')
street_number = elt[i].long_name;
else if(elt[i].types[0] == 'route')
route = elt[i].long_name;
else if(elt[i].types[0] == 'locality')
locality = elt[i].long_name;
else if(elt[i].types[0] == 'administrative_area_level_2')
administrative_area_level_2 = elt[i].long_name;
else if(elt[i].types[0] == 'administrative_area_level_1')
administrative_area_level_1 = elt[i].long_name;
else if(elt[i].types[0] == 'postal_code')
postal_code = elt[i].long_name;
else if(elt[i].types[0] == 'country')
country = elt[i].long_name;
}
var adress = '';
if(street_number)
adress += street_number;
if(route)
adress += ' ' + route;
if(postal_code)
adress += ', ' + postal_code;
if(locality)
adress += ' ' + locality;
if(administrative_area_level_2)
adress += ', ' + administrative_area_level_2;
if(administrative_area_level_1)
adress += ', ' + administrative_area_level_1;
if(country)
adress += ', ' + country;
func(adress);
}
else
{
func(null);
}
});
}
var truc = function(coords)
{
if(coords)
alert('truc = ' + coords);
else
alert('error');
}
getLatLng("Paris", truc); |
Partager