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 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 gitme özelliklerini kullanma 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 moda uyumlu bir yol segmentinden bu eşiklerden daha uzaktaysa 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 halka açık bir caddeye veya yola yakın konumlandırıldığından emin olun.
Yürüyüş veya bisiklet için trafiğe duyarlı rota isteğinde bulunduğumda neden hata alıyorum?
Canlı trafik koşulları (TRAFFIC_AWARE) yalnızca DRIVE seyahat modu için desteklenir. WALK veya BICYCLE için routingPreference parametresi TRAFFIC_AWARE olarak ayarlanmış şekilde izokron isteğinde bulunmaya çalışırsanız API, 400 INVALID_ARGUMENT hatası döndürür.
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 birçok harita SDK'sı ve özel geometri nesnesi, koordinatların [latitude, longitude] sırasıyla olmasını bekler.
Harita oluşturma işleminiz yanlışsa harita SDK'nızın GeoJSON'u nasıl işlediğini kontrol edin:
- Maps JavaScript API: Veri katmanını (
map.data.addGeoJson()) kullanıyorsanız bu sıralama yerel olarak işlenir ve herhangi bir işlem yapmanız gerekmez. - Özel nesneler veya diğer SDK'lar: Yanıtı manuel olarak
LatLngnesnelerine ayrıştırıyorsanız oluşturmadan önce GeoJSON yükündeki koordinatları döngüye almanız ve[lng, lat]değerlerini[lat, lng]çiftlerine dönüştürmeniz 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'si, 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 sağlam 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 tamamen 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.