Routes API, bir rota hesaplarken giriş olarak sağladığınız ara noktaları ve yapılandırma parametrelerini kullanır. API daha sonra varsayılan rotayı ve bir veya daha fazla alternatif rotayı içeren bir yanıt döndürür.
Yanıtınız, istediğiniz alanlara göre farklı rota türleri ve başka veriler içerebilir:
| Bunu yanıta dahil etmek için | Bu belgelere göz atın |
|---|---|
| Aracın motor türüne göre yakıt veya enerji verimliliği en yüksek rota. | Çevre dostu rotaları yapılandırma |
| Üç adede kadar alternatif rota | Alternatif rotalar isteme |
| Tüm rota, rotanın her bir ayağı ve bir ayağın her bir adımı için çoklu çizgi. | Rota çoklu çizgilerini isteme |
| Sürücü veya araç için geçerli olan geçiş ücreti indirimleri ya da geçiş kartları dikkate alınarak hesaplanan tahmini geçiş ücretleri. | Ücretli geçiş ücretlerini hesaplama |
| Dil kodlarına ve ölçü birimine (İngiliz ölçü birimi veya metrik) göre yerelleştirilmiş yanıtlar. | Yerelleştirilmiş değerleri isteme |
Navigasyon talimatlarını HTML metin dizesi olarak biçimlendirmek için extraComputations öğesine HTML_FORMATTED_NAVIGATION_INSTRUCTIONS ekleyin. |
Ek Hesaplamalar |
Giriş seçeneklerinin tam listesi için Kullanılabilir rota seçenekleri ve İstek gövdesi bölümlerine bakın.
Yanıttan yararlanarak müşterilerinize, ihtiyaçlarına uygun rotayı seçmeleri için gereken bilgileri sağlayabilirsiniz.
Alan maskeleri hakkında
Rota hesaplamak için bir yöntem çağırdığınızda, yanıtta döndürülmesini istediğiniz alanları tanımlayan bir alan maskesi belirtmeniz gerekir. Döndürülen alanların varsayılan bir listesi yoktur. Bu listeyi atlarsanız yöntemler hata döndürür.
Bu belgedeki örneklerde, alan maskeleri dikkate alınmadan yanıt nesnesinin tamamı gösterilmektedir. Üretim ortamında yanıtınız yalnızca alan maskesinde açıkça belirttiğiniz alanları içerir.
Daha fazla bilgi için Döndürülecek bilgileri seçme bölümüne bakın.
Telif haklarını gösterme hakkında
Sonuçları kullanıcılarınıza gösterirken aşağıdaki telif hakkı beyanını eklemeniz gerekir:
Powered by Google, ©YEAR Google
Örneğin:
Powered by Google, ©2023 Google
Rotalar, ayaklar ve adımlar hakkında
Routes API tarafından döndürülen yanıta bakmadan önce, bir rotayı oluşturan bileşenleri anlamanız gerekir:

Yanıtınız, aşağıdaki rota bileşenlerinin her biri hakkında bilgi içerebilir:
Rota: Başlangıç noktasından ara noktalar üzerinden varış noktasına kadar olan tüm seyahat. Rota, bir veya daha fazla ayaktan oluşur.
Etap: Rotadaki bir ara noktadan bir sonraki ara noktaya giden yol. Her ayak, bir veya daha fazla ayrı adımdan oluşur.
Bir rota, her bir ara noktadan bir sonrakine giden yol için ayrı bir ayak içerir. Örneğin, rota tek bir başlangıç noktası ve tek bir varış noktası içeriyorsa rota tek bir bölüm içerir. API, başlangıç ve varış noktalarından sonra rotaya eklediğiniz her ek yol noktası (ara yol noktası olarak adlandırılır) için ayrı bir ayak ekler.
API, geçiş ara noktası için bir ayak eklemez. Örneğin, bir başlangıç noktası, bir ara nokta ve bir varış noktası içeren bir rota, ara noktadan geçerken başlangıç noktasından varış noktasına yalnızca bir ayak içerir. Geçiş noktaları hakkında daha fazla bilgi için Geçiş noktası tanımlama başlıklı makaleyi inceleyin.
Adım: Bir rotanın ayağı boyunca tek bir talimat. Adım, bir rotanın en küçük birimidir. Örneğin, bir adımda "Ana Cadde'de sola dönün" ifadesi yer alabilir.
Yanıtta neler var?
API yanıtını temsil eden JSON nesnesi aşağıdaki üst düzey özellikleri içerir:
routes, Route türünde bir öğe dizisi.routesdizisi, API tarafından döndürülen her rota için bir öğe içerir. Dizi en fazla beş öğe içerebilir: varsayılan rota, çevre dostu rota ve en fazla üç alternatif rota.geocodingResults, GeocodingResults türünde bir öğe dizisi. API, istekte adres dizesi veya Plus Code olarak belirttiğiniz her konum (başlangıç, hedef veya ara nokta) için yer kimliği araması yapar. Bu dizinin her öğesi, bir konuma karşılık gelen yer kimliğini içerir. İstekte yer kimliği veya enlem/boylam koordinatları olarak belirtilen konumlar dahil edilmez. Tüm konumları yer kimlikleri veya enlem ve boylam koordinatlarını kullanarak belirttiyseniz bu dizi sağlanmaz.fallbackInfo, FallbackInfo türünde. API, tüm giriş özelliklerinden bir rota hesaplayamazsa farklı bir hesaplama yöntemine geçebilir. Yedek modu kullanıldığında bu alan, yedek yanıtla ilgili ayrıntılı bilgiler içerir. Aksi takdirde bu alanın değeri belirlenmez.
Yanıt şu biçimdedir:
{ // The routes array. "routes": [ { object (Route) } ], // The place ID lookup results. "geocodingResults": [ { object (GeocodedWaypoint) } ], // The fallback property. "fallbackInfo": { object (FallbackInfo) } }
Rotalar dizisini çözme
Yanıt, her dizi öğesinin Route türünde olduğu routes dizisini içerir.
Her dizi öğesi, başlangıç noktasından varış noktasına kadar olan tüm rotayı temsil eder. API her zaman varsayılan rota olarak adlandırılan en az bir rota döndürür.
Ek rotalar talep edebilirsiniz. Çevre dostu rota isterseniz dizi iki öğe içerebilir: varsayılan rota ve çevre dostu rota. Alternatif olarak, yanıta en fazla üç alternatif rota eklemek için istekte computeAlternativeRoutes değerini true olarak ayarlayın.
Dizideki her rota, routeLabels dizi özelliğiyle tanımlanır:
| Değer | Açıklama |
|---|---|
DEFAULT_ROUTE |
Varsayılan rotayı tanımlar. |
FUEL_EFFICIENT |
Çevre dostu rotayı tanımlar. |
DEFAULT_ROUTE_ALTERNATE |
Alternatif bir rotayı gösterir. |
legs dizisi, rotanın her bir ayağının tanımını içerir. distanceMeters, duration ve polyline, gibi kalan özellikler, rotanın tamamı hakkında bilgi içerir:
{ "routeLabels": [ enum (RouteLabel) ], "legs": [ { object (RouteLeg) } ], "distanceMeters": integer, "duration": string, "routeLabels": [string], "staticDuration": string, "polyline": { object (Polyline) }, "description": string, "warnings": [ string ], "viewport": { object (Viewport) }, "travelAdvisory": { object (RouteTravelAdvisory) } "routeToken": string }
Mevcut sürüş koşulları ve diğer faktörler nedeniyle varsayılan rota ile çevre dostu rota aynı olabilir. Bu durumda, routeLabels dizisi her iki etiketi de içerir: DEFAULT_ROUTE ve FUEL_EFFICIENT.
{ "routes": [ { "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ], … } ] }
Ayaklar dizisini anlama
Yanıttaki her route, bir legs dizisi içerir. Her legs dizi öğesi RouteLeg türündedir.
Dizideki her bacak, rota boyunca bir yol noktasından sonraki yol noktasına giden yolu tanımlar. Bir rota her zaman en az bir ayak içerir.
legs özelliği, steps dizisindeki her adımın tanımını içerir. distanceMeters, duration ve polyline gibi kalan özellikler, ayakla ilgili bilgileri içerir.
{ "distanceMeters": integer, "duration": string, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "steps": [ { object (RouteLegStep) } ], "travelAdvisory": { object (RouteLegTravelAdvisory) } }
Adım dizisini anlama
Yanıttaki her etap bir steps dizisi içerir. Her steps dizi öğesi RouteLegStep türündedir.
Adım, rota boyunca tek bir talimata karşılık gelir. Bir bacak her zaman
en az bir adım içerir.
steps dizisindeki her öğe, adım talimatını içeren NavigationInstruction türünde navigationInstruction özelliğini içerir. Örneğin:
"navigationInstruction": { "maneuver": "TURN_LEFT", "instructions": "Turn left toward Frontage Rd" }
instructions, adımla ilgili ek bilgiler içerebilir. Örneğin:
"navigationInstruction": { "maneuver": "TURN_SLIGHT_LEFT", "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days" }
Adımdaki kalan özellikler, adımla ilgili bilgileri (ör. distanceMeters, duration ve polyline) açıklar:
{ "distanceMeters": integer, "staticDuration": string, "polyline": { object (Polyline) }, "startLocation": { object (Location) }, "endLocation": { object (Location) }, "navigationInstruction": { object (NavigationInstruction) } }
Adım talimatlarının dilini belirtin
API, rota bilgilerini yerel dilde döndürür. Gerekirse kullanıcının okuyabileceği bir alfabeye dönüştürür ve tercih edilen dili dikkate alır. Adres bileşenlerinin tümü aynı dilde döndürülür.
Desteklenen diller listesinden rota dilini açıkça ayarlamak için isteğin
languageCodeparametresini kullanın. Google, desteklenen dilleri sık sık güncellediğinden bu liste kapsamlı olmayabilir.Belirtilen dilde bir ad yoksa API en yakın eşleşmeyi kullanır.
Belirtilen dil, API'nin döndürmeyi seçtiği sonuç kümesini ve bunların döndürülme sırasını etkileyebilir. Coğrafi kodlayıcı, kısaltmaları dile göre farklı şekilde yorumlar. Örneğin, sokak türlerinin kısaltmaları veya bir dilde geçerli olup başka bir dilde geçerli olmayan eş anlamlı kelimeler. Örneğin, utca ve tér, Macarcada sokak kelimesinin eş anlamlılarıdır.
geocodingResults dizisini anlama
İstekte adres dizesi veya Plus Code olarak belirtilen her konum (başlangıç, hedef veya ara nokta) için API, karşılık gelen bir yer kimliğine sahip en alakalı konumu bulmaya çalışır. geocodingResults dizisinin her öğesi, konumu yer kimliği olarak içeren placeID alanını ve konum türünü (ör. street_address, premise veya airport) belirten bir type alanını içerir.
geocodingResults dizisi üç alan içerir:
origin: Adres dizesi veya Plus Code olarak belirtilmişse başlangıç noktasının yer kimliği. Aksi takdirde bu alan yanıttan çıkarılır.destination: Adres dizesi veya Plus Code olarak belirtilmişse varış noktasının yer kimliği. Aksi takdirde bu alan yanıttan çıkarılır.intermediates: Adres dizesi veya Plus Code olarak belirtilen tüm ara yol noktalarının yer kimliğini içeren bir dizi. Yer kimliği veya enlem ve boylam koordinatlarını kullanarak bir ara nokta belirtirseniz bu nokta yanıttan çıkarılır. YanıttakiintermediateWaypointRequestIndexözelliğini kullanarak istekteki hangi ara yol noktasının yanıttaki yer kimliğine karşılık geldiğini belirleyin.
"geocodingResults": { "origin": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "destination": { "geocoderStatus": {}, "type": [ enum (Type) ], "placeId": string }, "intermediates": [ { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string }, { "geocoderStatus": {}, "intermediateWaypointRequestIndex": integer, "type": [ enum (Type) ], "placeId": string } ] }
Yerelleştirilmiş yanıt değerlerini anlama
Yerelleştirilmiş yanıt değerleri, döndürülen parametre değerleri için yerelleştirilmiş metin sağlayan ek bir yanıt alanıdır. Gezi süresi, mesafe ve birim sistemi (metrik veya İngiliz ölçü birimi) için yerelleştirilmiş metin sağlanır. Alan maskesi kullanarak yerelleştirilmiş değerler isteyebilir, dili ve birim sistemini belirtebilir veya API tarafından tahmin edilen değerleri kullanabilirsiniz. Ayrıntılar için LocalizedValues bölümüne bakın.
Örneğin, Almanca (de) ve İngiliz ölçü birimleri için bir dil kodu belirtirseniz distanceMeters için 49889,7 değerini alırsınız ancak bu mesafe ölçümünü Almanca ve İngiliz ölçü birimlerinde sağlayan yerelleştirilmiş metin de alırsınız (ör. "31 Meile").
Yerelleştirilmiş değerler için göreceğiniz bir örnek aşağıda verilmiştir:
{ "localized_values":
{
"distance": { "text": "31,0 Meile/n" },
"duration": { "text": 38 Minuten}.
"static_duration": { "text": 36 Minuten}.
}
}Dili veya birim sistemini belirtmezseniz API, dili ve birimleri aşağıdaki gibi tahmin eder:
ComputeRoutesyöntemi, konumu ve uzaklık ölçü birimlerini başlangıç noktasından tahmin eder. Bu nedenle, ABD'deki bir rota isteği için API,en-USdilini veIMPERIALbirimlerini kullanır.ComputeRouteMatrixyöntemi varsayılan olarak "en-US" dilini ve METRİK birimleri kullanır.