2014-10-02 54 views
5

我想從一個點訪問時間到另一點,交通和沒有交通(見下面的承受力)谷歌地圖API V3檢索數據,有和沒有交通

enter image description here

我要計算的有和沒有交通時延遲。我無法在Gogole Maps API v3中找到可以提供該數據的方法。或者我有計算與其他數據?編輯:
我知道如何計算持續時間。問題是我想獲得流量的持續時間以及沒有流量的持續時間(參見上面提供的圖片),以便計算可能的延遲時間。

編輯: 請糾正我,如果我錯了,但似乎是,根據該鏈路與谷歌API V3是不可能 Google maps traffic prediction API V3

有誰知道我可以從一個點獲得持續到另一個?它不一定是谷歌。

回答

2

Google Maps JS API中有一個traffic layer

您需要添加到您的地圖交通層:

var trafficLayer = new google.maps.TrafficLayer(); 
trafficLayer.setMap(map); 

在這裏有一個live example.

如果你要計算的持續時間,有a distance matrix API from Google 並從#1這個問題,你可以看到the answer.

Direction Service你需要給這個字段:

{ 
    origin: LatLng | String, 
    destination: LatLng | String, 
    travelMode: TravelMode, 
    transitOptions: TransitOptions, 
    unitSystem: UnitSystem, 
    durationInTraffic: Boolean, /* this is with traffic or without */ 
    waypoints[]: DirectionsWaypoint, 
    optimizeWaypoints: Boolean, 
    provideRouteAlternatives: Boolean, 
    avoidHighways: Boolean, 
    avoidTolls: Boolean 
    region: String 
} 

您可以先嚐試使用流量並保存持續時間,然後關閉流量選項並保存。所以你可以看到他們之間的區別。

+0

感謝您的回答。我知道如何計算持續時間。問題是我想獲得流量的持續時間以及沒有流量的持續時間(請參閱我在開場白中提供的圖片),以便計算可能的延遲時間。希望我能把我的觀點貫穿起來。 – thadeuszlay 2014-10-02 09:04:22

+0

所以你需要用'durationInTraffic:true',然後'durationInTraffic:false'寫回你的回調和選項一次,但我不太確定它是否會給你沒有流量版本的你。 – xmux 2014-10-02 09:09:34

+0

「注意:durationInTraffic字段現已被棄用,之前Google Maps APIs Premium Plan客戶推薦的方式是指定結果是否應包含考慮當前交通狀況的持續時間,您現在應該使用drivingOptions字段。 「 – 2016-05-01 21:37:44

2

您可以Distance Matrix API

GET請求做 -

https://maps.googleapis.com/maps/api/distancematrix/json?origins=garching&destinations=hamburg&departure_time=now&key=YOUR_KEY 

會給你duration & duration_in_traffic對於爲route-

{ 
    "destination_addresses": [ 
    "Hamburg, Germany" 
    ], 
    "origin_addresses": [ 
    "85748 Garching, Germany" 
    ], 
    "rows": [ 
    { 
     "elements": [ 
     { 
      "distance": { 
      "text": "761 km", 
      "value": 760831 
      }, 
      "duration": { 
      "text": "7 hours 1 min", 
      "value": 25242 
      }, 
      "duration_in_traffic": { 
      "text": "6 hours 42 mins", 
      "value": 24145 
      }, 
      "status": "OK" 
     } 
     ] 
    } 
    ], 
    "status": "OK" 
} 

departure_time被列爲可選參數該文件,但它是必需的,如果你想看到duration_in_traffic估計。

希望這會有所幫助。