Rota üzerinde arama özelliğine genel bakış
Rota boyunca arama özellikleri aşağıdaki Places (New) API'lerinde kullanılabilir:
- Yalnızca Text Search (New): Önceden tanımlanmış bir gezi rotası üzerindeki yerleri arayın.
- Metin Arama (Yeni) ve Yakında Arama (Yeni): Belirtilen bir rota başlangıç konumundan arama sonuçlarındaki her yere kadar olan rota özetini hesaplayın.
- Yalnızca Metin Arama (Yeni): Önceden tanımlanmış bir gezi rotası üzerindeki her yer için yönlendirme özetini hesaplayın.
Rota üzerinde arama yapma
İki konum arasındaki seyahat rotasını hesaplamak için Routes API'yi kullanırsınız. Routes API; araba, bisiklet, iki tekerlekli araç, toplu taşıma sistemi veya yaya için rota hesaplayabilir.
Metin Arama (Yeni), bir rota boyunca arama yapmak için bu hesaplanmış rotayı kullanmanıza olanak tanır. Bu seçenekte, önceden hesaplanmış rotayı Routes API'den Text Search (New) isteğine iletirsiniz. Yanıt, arama ölçütleriyle eşleşen ve belirtilen rotanın yakınında bulunan yerleri içerir.
Bir rota boyunca arama yapmak, arama sonuçlarını etkilemek için locationRestriction veya locationBias istek seçeneklerini kullanmaya benzer. locationRestriction
görüntü alanı sınırları içinde kalan arama sonuçlarını döndürürken
locationBias görüntü alanının dışındaki arama sonuçlarını döndürebilir. Ancak locationBias ve locationRestriction seçenekleri, arama sonuçlarını etkilemek için bir bölge belirtmenize olanak tanırken Text Search'teki rota boyunca arama özelliği, arama sonuçlarını rotanın başlangıç noktasından varış noktasına kadar minimum sapma süreleri olan sonuçları içerecek şekilde etkilemenize de olanak tanır. Çoklu çizgiyle birlikte locationBias veya locationRestriction kullanarak arama sonuçlarını yönlendirebilirsiniz.
Örneğin, Routes API'de ara nokta olarak adlandırılan başlangıçtan hedefe giden ve Routes API tarafından hesaplanan rotayı ele alalım:
Rota boyunca arama yaptığınızda, arama sonuçları başlangıç noktasından varış noktasına en az sapma süresiyle rota yakınındaki yerleri döndürmeye yöneliktir. Bu örnekte, A, B ve C noktaları arama tarafından döndürülen yerlerdir.
Yönlendirme özetini hesaplama
Metin Arama (Yeni) ve Yakında Arama (Yeni), istekte belirtilen rota başlangıç konumuna göre yanıttaki her yer için rota özetini (yani süreyi ve mesafeyi) hesaplayabilir. Rota kaynağını belirttiğinizde yanıt, yalnızca aramayla eşleşen yerlerin listesini değil, aynı zamanda rota kaynağından her bir yere olan seyahat süresini ve mesafeyi de içerir.
Aşağıdaki resimde A, B ve C noktaları, arama yanıtında döndürülen yerlerdir:
Sonuçlardaki her yer için yanıt, varsa rotanın başlangıç noktasından yere olan seyahat süresini ve mesafeyi içerir.
Seyahat süresi ve mesafesi, varsayılan olarak Routes API'deki TRAFFIC_UNAWARE seçeneği kullanılarak hesaplanır. İsteğe bağlı olarak, hesaplamalar sırasında canlı trafik koşullarını TRAFFIC_AWARE_OPTIMAL veya gecikmesi azaltılmış canlı trafik koşullarını TRAFFIC_AWARE dikkate alacak rota tercihlerini ayarlayabilirsiniz.
Rotalar, ayaklar ve ara noktalar hakkında
Routes API tarafından hesaplanan bir rota birkaç bileşenden oluşur:
Rota aşağıdaki bileşenlerden oluşur:
- Waypoint: Bir rotayı hesaplamak için en azından başlangıç ve varış noktalarının konumlarını belirtirsiniz. Bu konumları rotadaki ara noktalar olarak tanımlarsınız. Ara noktalar, başlangıç ve varış noktası arasında rotanın geçmesini istediğiniz yerlerdir.
-
Rota: Başlangıç noktasından ara noktalara ve varış noktasına kadar olan tüm yolculuk. Rota, bir veya daha fazla etaptan oluşur.
Text Search'e bir rota iletirken Routes API tarafından döndürülen rotanın kodlanmış çoklu çizgisini iletirsiniz. Kodlanmış çoklu çizgi, rotanın çoklu çizgisini dize olarak temsil etmenizi sağlayan, enlem ve boylam noktalarının kodlanmış bir listesidir.
-
Etap: Rotadaki bir ara noktadan rotadaki 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, rotada tek bir başlangıç noktası ve tek bir varış noktası varsa rota tek bir etaptan oluşur.
Başlangıç ve varış noktasından sonra rotaya eklediğiniz her ek ara nokta için (ara ara nokta olarak adlandırılır) API ayrı bir etap ekler.
Rotalar ve rota hesaplama hakkında daha fazla bilgi için Routes API'ye bakın.
Rota boyunca arama yaparak rota özetini hesaplama
Rota özeti hesaplamalarını rota boyunca arama ile birleştirebilirsiniz. Bu durumda Metin Arama (Yeni), yanıttaki her bir yerin seyahat süresini ve mesafesini, ardından her bir yerden rotanın son hedefine olan mesafeyi döndürür. Bu hesaplamayı, arama sonuçlarındaki bir yere gitmek için belirtilen rotadan sapıp son hedefe devam ettiğinizde seyahat süresi ve mesafesi sağlayan bir hesaplama olarak düşünebilirsiniz.
Örneğin, başlangıçtan hedefe giden ve Routes API tarafından hesaplanan aşağıdaki rotayı ele alalım. Bu rotayı, arama ölçütlerinizle birlikte Text Search (New) API'ye iletin.
Bu örnekte, A konumu, Metin Arama (Yeni) aracındaki arama sonuçlarında döndürülen bir yerdir. Yanıttaki her yer için arama, iki ayaklı bir yolculuk olarak bu yere gitmek için gereken süreyi ve mesafeyi içerir:
- İlk etap, rotanın başlangıç noktasından yere kadar olan seyahat süresini ve mesafeyi içerir. Bu örnekte, başlangıç noktasından A yerine.
- İkinci ayak, yer ile rota hedefi arasındaki seyahat süresini ve mesafeyi içerir. Bu örnekte, A'dan hedefe.
Yanıtın içerdiği bilgilerden yararlanarak alternatif yolun süresini ve mesafesini hesaplayabilirsiniz. Burada:
- \(t_{OD}\) , başlangıç noktasından varış noktasına kadar olan gezi süresidir, \(s_{OD}\) , başlangıç noktasından varış noktasına kadar olan gezi mesafesidir
- \(t_{OA}\) , başlangıç noktasından A'ya seyahat süresini; \(s_{OA}\) ise başlangıç noktasından A'ya seyahat mesafesini gösterir.
- \(t_{AD}\) , A noktasından varış noktasına seyahat süresini; \(s_{AD}\) , A noktasından varış noktasına seyahat mesafesini gösterir.
Alternatif yol süresi, orijinal yolculuk (kalkış noktasından varış noktasına) ile yeni yolculuk (kalkış noktasından varış noktasına A üzerinden) arasındaki süre farkıdır:
Alternatif yol mesafesi, orijinal yolculuk (kalkış noktasından varış noktasına) ile yeni yolculuk (kalkış noktasından varış noktasına A üzerinden) arasındaki mesafe farkıdır: