2016-07-08 10 views
-1

I JavaScriptを使用して、緯度2つの位置の間のRoadMap距離を計算する際に遭遇しました。このリンクをJavaScript緯線の2つの位置間のロードマップ距離を計算する方法

:答えを見つけることが

var service = new google.maps.DistanceMatrixService; 
service.getDistanceMatrix({ 
    origins: [origin1], 
destinations: [destinationA], 
travelMode: google.maps.TravelMode.DRIVING, 
unitSystem: google.maps.UnitSystem.METRIC, 
avoidHighways: false, 
avoidTolls: false 
}, function(response, status) { 
if (status !== google.maps.DistanceMatrixStatus.OK) { 
     alert('Error was: ' + status); 
    return; 
    } 

https://jsfiddle.net/c6omLvso/

+0

利用のGoogleマップのAPIを、 –

+0

fullmost広がりくださいですあなたの質問の答えとして私の答えを記入することを忘れないでください。それは他人を助けるでしょう。ありがとう。 – xxxmatko

+0

あなたが書いているリンクは私があなたのために作ったものなので、答えとして私の答えを記入することを忘れないでください。ありがとう – xxxmatko

答えて

1

は、Googleを使用していますがJavaScript APIのをマップ? uは"Distance Matrix Service"

+0

はいJavaScriptを使用しています。あなたは例のリンクを与えることができますか? – Rajesh

+0

彼らが与えた例はhttps://developers.google.com/maps/documentation/javascript/examples/distance-matrix –

+0

であり、私が入力した緯度経度と緯度経度の両方で、私は名前がなく場所はどのように? – Rajesh

1

を試すことができますので、場合は、このようなGoogleの距離行列使用して、あなたの目標を達成することができます。それに

google.maps.event.addDomListener(window, "load", function() { 
 
    var map = new google.maps.Map(document.getElementById("map"), { 
 
     center: new google.maps.LatLng(55.53, 9.4), 
 
     zoom: 10, 
 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
 
    }); 
 
    
 
    var origin1 = {lat: 55.93, lng: -3.118}; 
 
    var origin2 = 'Greenwich, England'; 
 
    var destinationA = 'Stockholm, Sweden'; 
 
    var destinationB = {lat: 50.087, lng: 14.421}; 
 
    
 
    var service = new google.maps.DistanceMatrixService; 
 
    service.getDistanceMatrix({ 
 
     origins: [origin1, origin2], 
 
     destinations: [destinationA, destinationB], 
 
     travelMode: google.maps.TravelMode.DRIVING, 
 
     unitSystem: google.maps.UnitSystem.METRIC, 
 
     avoidHighways: false, 
 
     avoidTolls: false 
 
    }, function(response, status) { 
 
     if (status !== google.maps.DistanceMatrixStatus.OK) { 
 
      alert('Error was: ' + status); 
 
      return; 
 
     } 
 

 
     var originList = response.originAddresses; 
 
    \t var destinationList = response.destinationAddresses; 
 
     var output = document.getElementById("output"); 
 
     output.innerHTML = ""; 
 
    
 
    for (var i = 0; i < originList.length; i++) { 
 
     var results = response.rows[i].elements; 
 
     for (var j = 0; j < results.length; j++) { 
 
     output.innerHTML += originList[i] + ' to ' + destinationList[j] + 
 
      ': ' + results[j].distance.text + ' in ' + 
 
      results[j].duration.text + '<br>'; 
 
     } 
 
    }  
 
    }); 
 
});
body { 
 
    margin: 0; 
 
    padding: 0; 
 
    font: 12px sans-serif; 
 
} 
 

 
#map { 
 
    width: 400px; 
 
    height: 400px; 
 
}
<script src="https://maps.googleapis.com/maps/api/js?v=3"></script> 
 
<div id="map"></div> 
 
<div id="output"></div>

enter code here 
+0

こんにちは、ありがとう、しかし...あなたは与えている var origin1 = {lat :55.93、1ng:-3.118}; var origin2 = 'グリニッジ、イングランド'; var destinationA = 'ストックホルム、スウェーデン'; var destinationB = {lat:50.087、lng:14.421}; latとlocationの両方の名前です。私はちょうど私と長い緯度を持っているどのように? – Rajesh

+0

これは例ですが、原点と目的地を希望するものに変更するだけです。 – xxxmatko

+0

ありがとうございました.... – Rajesh

関連する問題