6

Co to są "poziomy" w kodowaniu/dekodowaniu polilinii, a także w jaki sposób odnoszą się do poziomów powiększenia mapy w Google Maps API v3 lub Android Maps API v2?Czym dokładnie są "poziomy" w kodowaniu/dekodowaniu polilinii?

Jedyny opis znajdę to od Interactive Polyline Encoder Utility:

Polilinie w Google Maps są tworzone jako zbiór par szerokość/długość geograficzna. Ponadto dla każdego wierzchołka (lokalizacji) w zakodowanej polilinii można określić poziom wskazujący, że położenie powinno pojawić się na tym poziomie i na dowolnym poziomie wyższym (tj. Każde zmniejszenie powiększenia). Jeśli lokalizacja nie pojawi się na danym poziomie, linia przejdzie z ostatniej widocznej lokalizacji do następnej widocznej lokalizacji. Zauważ, że pierwsza i ostatnia lokalizacja muszą mieć poziom 3, w przeciwnym razie polilinia nie będzie wyświetlana na wszystkich poziomach.

Czy "Poziom 3" odpowiada poziomowi powiększenia wynoszącemu 3 w Google Maps API v3 lub Android Maps API v2?

Oto co poziom zoom z 3 wygląda w Google Maps API v3 (wyświetlany jest bez łamaną - to wystarczy, aby zilustrować, co "poziom zoom = 3" wygląda):

enter image description here

Czy powinien zostać wyświetlony punkt "Poziom 3", jeśli pomniejszysz o jeden krok, aby powiększyć poziom 2?

enter image description here

Cytat:

Należy pamiętać, że pierwsze i ostatnie lokalizacje muszą być równe 3 punkty, w przeciwnym razie polilinia nie będą wyświetlane na wszystkich poziomach.

... zdaje się wskazywać, że poziom 3 punkty powinny być wyświetlany na wszystkich poziomach, łącznie z poziomami powiększenia 2, 1 i 0.

Zastanawiam się, czy oświadczenie:

... poziom można określić co wskazuje, że lokalizacja powinna pojawić się na tym poziomie, a każdy wyższy poziom (czyli każdy spadek w zoom.)

... powinno być:

... można określić poziom wskazujący, że lokalizacja powinna pojawić się na tym poziomie i dowolnym wyższym poziomie (tj. każdy wzrost w zoom.)

„Spadek zoom” nie wydaje się słuszne, gdyż poziom 18 (bardzo powiększone) punkty byłyby świadczone na poziomie 3 (bardzo pomniejszony).

"Zwiększenie powiększenia" wydaje się generalnie mieć sens (renderowałbyś pomniejszony o 3 poziom także wtedy, gdy powiększysz do poziomu 18 - innymi słowy dodajesz szczegóły podczas przybliżania mapy) - jednak wydaje się to sprzeczne z twierdzeniem, że punkty poziomu 3 powinny być renderowane przy niższych poziomach powiększenia 2, 1 i 0.

Na Androidzie, open-source android-maps-utils library zawiera metodę na decode polylines, ale nie obsługuje poziomów, więc nie mogę stwierdzić, czy jest dostępne mapowanie do poziomów powiększenia Androida Maps API v2.

Czy ktoś może zapewnić jasność w tej sprawie?

+0

Zastanawiam się, gdzie napisałeś "zakodowaną polilinię" w swoim kodzie. W ogóle nie widzę kodu. – wf9a5m75

+0

@ wf9a5m75 Nie ma żadnych kodowanych polinez w kodzie JavaScript lub wyświetlanych na mapie - Używałem tych ekranów po prostu do zilustrowania jak wygląda konkretny poziom zoomu w Mapach Google. Przepraszam, jeśli to nie było jasne - dodam notatkę do pytania na ten temat. –

Odpowiedz

0

Poziomy są przestarzałymi elementami. Kontrolowali, czy punkty były widoczne przy pewnych poziomach powiększenia. Były istotną cechą Google Maps API v2, ale teraz należy je zignorować; Google Maps API v3 robi to automatycznie.