· kaynak Hacker News – Front Page (native)
Flatten SF, tarayıcıda 160.000 San Francisco sokak segmenti arasında en düz rotaları buluyor
Drew Edwards tarafından geliştirilen Flatten SF, USGS lidar yükseklik verileri ve Overture/OpenStreetMap verilerini kullanarak, tamamen tarayıcı içinde, 160.000 San Francisco sokak segmenti üzerinde minimum tırmanışlı rotalar hesaplıyor.

Tepeleri göz önünde bulunduran bir rotlama motoru
San Francisco'da yürüyen herkes bilir: en kısa rota nadiren en kolay olandır. 5 Ekim'de Hacker News ana sayfasında öne çıkan, Drew Edwards'ın sitesi Flatten SF tam da bu soruna odaklanmış: şehirde iki nokta seçiyorsunuz ve site en az metredek değil, en az tırmanış gerecek yolu çiziyor.
Sitede belirtildiğine göre tüm bu işlemler ziyaretçinin tarayıcısında, yerel olarak, yaklaşık 160.000 segmentlik bir sokak grafiği üzerinden gerçekleşiyor. Grafik, Overture ve OpenStreetMap sokak verilerini USGS'nin bir metre çözünürlüklü lidar yükseklik verileriyle birleştiriyor; aracın şehrin eğimlerini bu sayede kavrayabilmesini sağlayan da bu.
Her makul ödünleşimi kapsayan bir kaydırıcı
Arayüzün merkezinde bir kaydırıcı var ve bu, kısa ile düz arasındaki kaba bir düğme değil. Site, mesafe ve tırmanış açısından hiçbir alternatifin yenemediği rotaların tamamını sunuyor — etkili bir şekilde yolların bir Pareto sınırı. Bir uçta düz en kısa yol duruyor. Diğer uçta ise yazarın almaya değer bulduğu en düz dolambaçlı yol var: 30 santimetrelik bir tırmanışın 60 metre ek yürüyüşe mal olduğu nokta; bunun ötesindeki sonuçlar gerçek rota sayılamayacak kadar dolambaçlı hale geliyor.
Sitede belirtildiğine göre düzlüğe doğru kaydırmak iki garanti taşıyor: rota asla kısalmıyor ve tırmanış asla artmıyor. Ödünleşim boyunca diğer adaylar soluk çizgilerle çiziliyor; böylece makul rotaların tüm ailesi art arda sorgulamaların arkasına gizlenmeden bir keziden görülebiliyor.
Tüm sayıları şekillendiren tanımsal bir tercih var: tırmanış, uç noktalar arasındaki net yükseklik farkı değil, kümülatif kazanç olarak ölçülüyor. Inişler önceki çıkışları iptal etmiyor; bu da yürüyerek harcanan eforun gerçekte nasıl biriktiğini yansıtıyor.
Graftaki ayrıntılar
Seyahat modları farklı şekilde ele alınıyor. San Francisco'nun yaya ağının gerçek bir parçası olan merdivenler, yaya rotalamasına izin veriliyor, bisiklet rotalamasında ise hariç tutuluyor.
Yer arama da çevrimdışı çalışıyor. San Francisco'daki kavşaklar, adlandırılmış yerler ve adresler sayfaya gömülü; bu yüzden başlangıç ve bitiş noktası belirlemek için sunucuya gidilmesi gerekmiyor. Edwards ayrıca kaynağı, temel verileri ve analizin daha kapsamlı bir anlatımını da yayımlıyor.
Neden önemli
Ana akım rotlama servisleri zaman veya mesafe için optimize ediyor ve yüksekliği en iyi ihtimalle dipnot olarak ele alıyor. Yayalar, bisikletliler ve dik bir bloğun gerçek bir engel olduğu herkes için bu yanlış bir amaç fonksiyonu; Flatten SF ise alternatifin hem hesaplanabilir hem de sunulması kolay olduğunu gösteriyor.
Ayrıca bu, modern bir tarayıcının tek başına ne kadar ağır iş başarabileceğinin kompakt bir kanıtı: 160.000 ağırlıklı kenar üzerinde grafik araması, koca bir şehir için çevrimdışı geocoding ve çok amaçlı bir sonuç kümesinin keşfedilebilir bir sınır olarak çizilmesi — hiçbir backend devrede olmadan. Overture ve OpenStreetMap gibi açık sokak veri setleri ile kamusal lidar kapsamının birleştirilmesi kolaylaştıkça, bu tür özelleştirilmiş, local-first araçlar geliştirmek daha ucuz hale geliyor — ve ödünleşimleri ortaya koymak için kaydırıcı-artı-soluk-çizgiler desenini diğer haritalama araçlarının da faydalı bir şekilde kopyalayabileceği bir örnek.
- #routing
- #openstreetmap
- #maps
- #browser
- #lidar