Temel kavramlar

İzokron oluşturmak için API'ye bir başlangıç noktası, sürüş, iki tekerlekli araç, bisiklet veya yaya gibi bir ulaşım şekli ve bir zaman sınırı girin. Ayrıca rota tercihlerini ve sonuçta elde edilen poligonun görsel görünümünü de ayarlayabilirsiniz.

Seyahat modları

Ulaşım modunu belirtmek için zorunlu travelMode (travel_mode) parametresini kullanın:

  • DRIVE: Belirlenen hız sınırlarını, yol hiyerarşisini, dönüş cezalarını ve (isteğe bağlı olarak) canlı trafik koşullarını kullanarak bir binek aracın sürülebilir yollardaki erişilebilirliğini hesaplar.
  • TWO_WHEELER: Modlara özel yol erişim kurallarını ve yüksek hızlı yollarda DRIVE'ten daha düşük modellenmiş hızları kullanarak iki tekerlekli motorlu araçların (motosiklet veya scooter gibi) erişilebilirliğini hesaplar. Sonuç olarak, TWO_WHEELER eş zamanlılık genellikle BICYCLE değerinden daha büyük ancak yüksek hızlı otoyollar boyunca DRIVE değerinden daha küçük bir alanı kapsar.
  • BICYCLE: Bisikletlilerin bisikletle erişilebilen sokaklar, bisiklet yolları ve ortak yollardaki erişilebilirliğini hesaplar. Hızlar, yol türüne ve eğime göre ayarlanır. Otoyollar ve kontrollü erişime sahip otoyollar hariç tutulur.
  • WALK: Kaldırımlar, patikalar, yürüyüş yolları ve yayaların erişebileceği sokaklar boyunca yayaların erişilebilirliğini hesaplar. Yürüme hızı eğime göre ayarlanır. Yaya geçişi, tek yönlü araç kısıtlamalarını yok sayar.

Zaman aralığı

Hizmete sağladığınız birincil kısıtlama travelDuration (travel_duration) parametresidir. Bu parametre, hesaplamanın zaman aralığını tanımlar.

  • Minimum ve maksimum süre: Süre en az "1s" (1 saniye) olmalıdır. Sıfır ("0s"), negatif süreler ve 1 saniyenin altındaki saniye altı süreler (ör. "0.5s") 400 INVALID_ARGUMENT hatası döndürür. API, DRIVE ve TWO_WHEELER modları için maksimum 3.600 saniye (1 saat), WALK ve BICYCLE modları için ise 7.200 saniye (2 saat) seyahat süresini destekler.
  • Minimum poligon tabanı: API, ulaşılan yol segmentlerini uzamsal ızgara hücrelerine dönüştürdüğü için çok kısa süreler, yakalanan başlangıç noktasının etrafındaki ızgara hücrelerini kapsayan küçük bir poligon döndürür.
  • Performans: Hesaplama süresi, istenen süreye ve seçilen seyahat moduna göre değişir. Bir saatlik sürüş eş zamanlı haritası, bir saatlik yürüyüş eş zamanlı haritasına kıyasla çok daha geniş bir coğrafi alanı ve yol ağını kapsar. Bu nedenle, sürüş isteği için daha yüksek gecikme süresi olur.
  • Biçimlendirme: API, google.protobuf.Duration kullandığından süre, tam sayı yerine "s" ile biten bir dize (ör. "3600s") olarak biçimlendirilmelidir.

Başlangıç noktaları ve yola tutturma

Eş zamanlı için başlangıç noktasını iki şekilde belirtebilirsiniz:

  • Koordinatlar (location): Enlem ve boylam çifti. Hem latitude ([-90, 90] cinsinden) hem de longitude ([-180, 180] cinsinden) değerlerini girin. Bunlardan birini atlarsanız API, değeri 0.0 olarak kabul eder ve noktayı ekvatora veya başlangıç meridyenine yerleştirir. İkisini de ({}) atlarsanız veya (0, 0) gönderirseniz API, 400 INVALID_ARGUMENT hatası döndürür.
  • Yer kimlikleri (place): Google Haritalar'daki belirli bir yer için benzersiz bir tanımlayıcıdır. Bir yer kimliği sağladığınızda hizmet, yeri merkez koordinatına çözümler ve bu noktayı en yakın yola sabitler. places/ ile başlayan kaynak adı biçimini kullanın (ör. places/ChIJIQBpAG2ahYAR_6128GcTUEo). places/ ön eki olmayan yalın bir yer kimliği de kabul edilir. Yer kimlikleri hakkında daha fazla bilgi için Yer Kimlikleri başlıklı makaleyi inceleyin.

Giriş yönteminden bağımsız olarak API, tam fiziksel nokta bir yol üzerinde değilse (ör. park veya bina içindeyse) seyahat sürelerini bu noktadan hesaplamaz. Hizmet, bu durumu ele almak için yola tutturma özelliğini kullanır. Yola tutturma aşağıdaki özelliklere sahiptir:

  • Akıllı yakalama: Hizmet, başlangıç noktanızı en yakın geçilebilir yol segmentine yakalamaya çalışır.
  • Mod farkındalığı: Tutturma mantığı, travel_mode ayarınızı dikkate alır. DRIVE veya TWO_WHEELER isteğinde bulunursanız API, yalnızca yayalara açık yolları yok sayar ve en yakın araçla gidilebilecek sokağı arar. WALK isteğinde bulunursanız API, yürünebilir yollara ve kaldırımlara öncelik verir.
  • Başarısızlık durumları: API, başlangıç noktanızın maksimum yakalama mesafesi (yaklaşık 200 metre veya WALK ve BICYCLE için daha az) içinde uygun bir yol segmenti bulamazsa 404 NOT_FOUND hatası döndürür. Büyük coğrafi öğelerin (ör. parklar, kampüsler veya manzara noktaları) yer kimliği ağırlık merkezi, seyahat modunun kullanabileceği en yakın yoldan yakalama mesafesinden daha uzakta olabilir. Bu gibi durumlarda, yol girişinin açık location koordinatlarını iletin.

Seyahat yönü (gidiş ve dönüş)

travelDirection (travel_direction) parametresini kullanarak hem gelen hem de giden erişilebilirliği hesaplayabilirsiniz:

  • FROM (Giden): Belirtilen süre sınırı içinde başlangıç noktasından ulaşılabilen alanı hesaplar. Bu, doğrudan teslimat bölgeleri veya hizmet kapsamı gibi kullanım alanları için uygundur.
  • TO (Gelen): Belirtilen süre içinde başlangıç noktasına gidebileceğiniz alanı hesaplar. Bu, çalışanların merkezi bir ofise ulaşmak için nereden yola çıkabileceği gibi hizmet bölgelerini belirlemek için uygundur.

Trafik farkındalığı

Trafik verilerinin, oluşturulan poligonu nasıl etkileyeceğini routingPreference (routing_preference) parametresiyle kontrol edin:

  • TRAFFIC_UNAWARE (Varsayılan): Eş zamanlı poligonu oluşturmak için serbest akış hız sınırlarını ve yol hiyerarşisini kullanır. Bu, günün saatine göre dalgalanmayan deterministik bir şekil oluşturur. Bu parametre, genel analiz veya referans senaryo planlaması için idealdir.
  • TRAFFIC_AWARE: İsteğin işlendiği tam zamandaki canlı trafik koşullarını kullanarak eş zamanlıları hesaplar (özel gelecekteki veya geçmişteki kalkış ya da varış zaman damgaları v1'de yapılandırılamaz). Bu durum, ulaşılabilir alanın yoğun saatlerde küçülmesine ve yoğun olmayan saatlerde genişlemesine neden olur. Serbest akış veya yoğun olmayan koşullarda TRAFFIC_AWARE ve TRAFFIC_UNAWARE neredeyse aynı poligonları döndürebilir. Not: Trafiğe duyarlı rota izleme yalnızca travelMode, DRIVE veya TWO_WHEELER olarak ayarlandığında desteklenir.

Düzeltme ve aslına uygunluk

polygonFidelity (polygon_fidelity) ve enableSmoothing (enable_smoothing) parametrelerini kullanarak çıkış poligonlarının görünümünü ve hassasiyetini özelleştirebilirsiniz. Bu seçenekler birbirinden bağımsız olsa da nihai şekli belirlemek için birlikte çalışır.

  • polygonFidelity: Erişilebilir sınırın yaklaşık değerini hesaplamak için kullanılan uzamsal kılavuz hücre çözünürlüğünü kontrol eder:

    • LOW: En büyük ızgara hücrelerini (birkaç yüz metre genişliğinde) kullanır. Daha az köşe içeren ve iç boşlukları olmayan geniş alanları kapsamak için en uygun seçenektir. Bu seçenek, dar yol koridorları boyunca erişilebilir alanı abartabilecek genelleştirilmiş bir şekil oluşturur.
    • MEDIUM: Dengeli hassasiyet ve köşe sayısı.
    • HIGH: En küçük ızgara hücrelerini (yaklaşık 100-150 metre genişliğinde) kullanır. Ulaşılan yol ağına daha sıkı bir uyum sağlar ancak yol ağının seyrek olduğu yerlerde iç boşluklar oluşturabilir.
    • POLYGON_FIDELITY_UNSPECIFIED: Belirtilmezse hizmet, seyahat moduna ve süresine göre çözünürlüğü otomatik olarak seçer. Kısa süreler ve WALK için daha küçük hücreler, uzun süreler için ise daha büyük hücreler kullanılır. Farklı süreler veya seyahat modları için eş zamanlıları karşılaştırmak istiyorsanız polygonFidelity değerini açıkça ayarlayın.
      Yüksek, orta ve düşük poligon doğruluğu
      Yüksek, orta ve düşük poligon doğruluğu
  • enableSmoothing: Doğruluk tarafından tanımlanan ızgara hücrelerinin basamaklı kenarlarının yuvarlatılıp yuvarlatılmayacağını kontrol eder.

    • false (Ham): Varsayılan. Izgaraya hizalanmış sınırı döndürür. Kenarlar, ızgara hücreleri boyunca basamaklı görünür. Katı çokgen içi nokta testleri gibi analitik doğruluk için en iyisidir.
    • true (Düzleştirilmiş): Her halkanın alanını yaklaşık olarak korurken görsel harita görünümü için keskin köşeleri yuvarlar. Sınır artık ızgara hücrelerini takip etmez.
      Yumuşatılmış ve yumuşatılmamış eş zamanlı harita
      Düzeltme uygulanmış ve uygulanmamış eşzamanlı harita