:Googleのジオコーダは、要求値とは異なる緯度と経度を返す
getLocationFromCoords(lat, lng) {
var geocoder = new google.maps.Geocoder();
var latLng = new google.maps.LatLng(parseFloat(lat), parseFloat(lng));
geocoder.geocode({
'latLng': latLng
}, function (results, status) {
if (status === google.maps.GeocoderStatus.OK) {
if (typeof results[0].geometry.location != 'undefined') {
console.log(lat, lng);
console.log(results[0].geometry.location.lat(), results[0].geometry.location.lng());
// set the location
} else {
//...
}
});
});
}
問題がresults[0].geometry.location
から緯度と経度がの値と異なることですリクエスト。コンソールで上記のコードが表示されます。
38.9067339 1.4205983
38.9069681 1.4205133000000387
だから私は何をしないのですか?なぜ同じ値ではないのですか?
何をしようとしますか? LatLongにアドレス指定するかLatLongにアドレスするか? –
@TuğcaEker - LatLong(アドレスには緯度と経度も含まれます)。 – Manolo
あなたはappliyng **逆ジオコーディング**を使用して座標をアドレスに変換します。 Googleはあなたに最も近い記録を返すので、正確に同じGeoLocationを取得することはできません。私のチェックでは、期待と結果の間には20-30メートルしかありません。心配しないでください、それは正常です。 –