Neden 2 saate kadar yürüme veya bisikletle ulaşım izokronu isteyebiliyorum ancak araba ile ulaşım 1 saatle sınırlı?
Bu sınırlama, hesaplamaların işlem karmaşıklığına dayanır. Bir araç, aynı süre içinde bir yaya veya bisikletliden çok daha fazla yol kat eder. Bu da analiz edilmesi gereken temel yol ağının katlanarak genişlediği anlamına gelir. API'nin hızlı ve gerçek zamanlı senkron bir pencerede yanıt döndürebilmesi için sürüş süresi en fazla 1 saat (3.600 saniye) ile sınırlandırılmıştır. Yürüyüş ve bisiklet sürme ise 2 saate (7.200 saniye) kadar desteklenir.
Bir varış noktasına giderken (işe gidiş) ve bir başlangıç noktasından ayrılırken (işten dönüş) izokronu nasıl hesaplayabilirim?
Gelen ve giden hesaplamalar, v1 API'de travel_direction parametresi kullanılarak desteklenir:
FROM(Giden): Belirtilen süre sınırı içinde başlangıç noktasındanfromulaşılabilen alanı hesaplar. Bu, teslimat bölgeleri veya hizmet kapsamı gibi kullanım alanları için uygundur.TO(Gelen): Belirtilen süre içindetobaşlangıç noktasından seyahat edebileceğiniz alanı hesaplar. Bu, işe gidip gelme özellikleri veya merkezi bir ofis ya da toplu taşıma merkezi etrafındaki hizmet alanlarını belirleme gibi uygulamalar için uygundur.
Bazen döndürülen çokgen, özellikle daha uzun süreler için bloklu veya tırtıklı kenarlara sahip görünüyor. Ayrıntı düzeyi neden değişiyor?
Isochrones API, istenen travel_duration ve travel_mode değerlerine göre uzamsal hesaplama ızgarasının çözünürlüğünü dinamik olarak ayarlar:
- Daha kısa süreler: Toplam alan küçük olduğundan ayrıntılı bir sınır elde etmek için yüksek çözünürlüklü ve hassas bir ızgara kullanın.
- Daha Uzun Süreler: Ciddi gecikmeye neden olmadan geniş coğrafi alanı verimli bir şekilde kapsamak için daha kaba ve düşük çözünürlüklü bir ızgaraya geçiş yapın.
Süreye bakılmaksızın belirli ve tutarlı bir ayrıntı düzeyi istiyorsanız isteğe bağlı polygon_fidelity öğesini HIGH, MEDIUM veya LOW olarak ayarlayabilirsiniz.
Neden bazen bir park, göl veya büyük sanayi kompleksi içindeki bir koordinat için izokron isteğinde bulunulduğunda "Bulunamadı" hatası döndürülüyor?
Isochrones API, yolları ve patikaları kullanarak seyahat sürelerini hesaplar. İstenen başlangıç koordinatları tanınmış bir yol üzerinde bulunmuyorsa API, hesaplamaya başlamadan önce noktayı en yakın uyumlu segmente "tutturmalıdır".
Her seyahat modunun belirli bir maksimum tutturma mesafesi eşiği vardır:
DRIVE: 200 metre (yalnızca yayalara ait yollar dikkate alınmaz).BICYCLE: 180 metre.WALK: 150 metre.
Başlangıç noktanız, geçerli ve ulaşım moduyla uyumlu bir yol segmentinden bu eşiklerden daha uzakta yer alıyorsa tutturma işlemi başarısız olur ve API NOT_FOUND hatası döndürür. Bu sorunu çözmek için koordinatlarınızın herkese açık bir cadde veya yolun yakınına yerleştirildiğinden emin olun.
GeoJSON yanıtını haritamda oluşturduğumda şekil yanlış yerde gösteriliyor, bozuluyor veya oluşturulamıyor. Bunun nedeni nedir?
Bu durum neredeyse her zaman koordinat sırası uyuşmazlığından kaynaklanır.
Isochrones API, GeoJSON standardına (RFC 7946) uygun olarak koordinatları [longitude, latitude] sırasıyla döndürür. Ancak Google Maps JavaScript API ve çeşitli mobil harita bileşenleri de dahil olmak üzere birçok harita SDK'sı, koordinatların veya LatLng nesnelerinin [latitude, longitude] sırasıyla olmasını bekler.
Harita oluşturma işleminiz yanlışsa GeoJSON yükündeki koordinatları döngüye almanız ve değerleri harita SDK'nıza iletmeden önce transpoze etmeniz gerekir.
İzokron poligonumun içinde neden boş "delikler" var ve bunun yerine düz bir şekil alabilir miyim?
Boşluklar, zaman sınırı içinde ulaşılabilir yol bulunmayan alanları gösterir. Bu durum, araçların veya yayaların seyahat edemediği büyük ormanların, su kütlelerinin, havaalanlarının ya da özel mülklerin bulunduğu bölgelerde yaygındır.
Harici v1 API, boşlukları otomatik olarak kaldırmak için bir parametre kullanmaz. Uygulamanızın, örneğin nokta-çokgen kapsama kontrolleri gerçekleştirmek için katı bir sınıra ihtiyacı varsa şunları yapabilirsiniz:
- Algoritmanın genelleme yapmasını ve bu dahili boşlukları birleştirmesini teşvik etmek için
polygon_fidelityparametresiniMEDIUMveyaLOWolarak ayarlayın. - GeoJSON'u ayrıştırmak ve yalnızca ilk koordinat halkasını (dış kabuk) ayıklamak için istemci tarafı bir coğrafi bilgi sistemi kitaplığı (ör. Turf.js) kullanın. Ardından, sonraki iç halkaları (delikler) atın.
Arka uçta mekansal analiz için enable_smoothing seçeneğini etkinleştirmeli miyim?
Hayır. enable_smoothing parametresi yalnızca görsel estetik için tasarlanmıştır.
Şeklin haritada doğal görünmesi için temel hesaplama ızgarasının keskin köşelerini yuvarlar.
Düzleştirme, köşeleri değiştirdiği ve sınırları biraz kaydırdığı için hassas mekansal analizlerde önerilmez. Arka uç hesaplamaları, veritabanı sorguları veya nokta-çokgen testleri için matematiksel olarak hassas hesaplanmış sınırı kullandığınızdan emin olmak üzere enable_smoothing değerini false olarak ayarlayın.