2012-03-20 6 views
9

zauważam pole widzenia (FOV) stopnia na ulicy poziomu widoku powiększenia różni się między przeglądarkamijak mogę określić pole widzenia ulica widok panorama map korzysta

wierzę udokumentowaną ulica poziomu widoku zoomu FOV jest

0: 180, 1: 90, 2: 45, 3: 22.5, 4: 11:25 

Używam API v3 Maps z widokiem na panoramę ulicy i dostać poziomów powiększenia do FOV w chromie wokół

0: 127, 1: 90, 2: 53, 3: 28, 4: 14 

Należą do powiększenia pola widzenia są takie same w IE 7 i IE8

Firefox i IE6 one:

0: 180, 1: 90, 2: 45, 3: 22.5, 4: 11:25 
  • Czy to udokumentowane?
  • Jak mogę wymuszać spójność widoku ulicy FOV w różnych przeglądarkach lub obliczyć wartość FOV dla tego poziomu powiększenia ?
+0

Sprawdzanie interfejsu API Map Google prawdopodobnie będzie dobrym sposobem na odpowiedź na pierwsze pytanie. Próbowałeś to zrobić? –

+0

dziękuję - tak, sprawdziłem dokumentację interfejsu API tutaj: https://developers.google.com/maps/documentation/javascript/streetview, ale zawiera ona tylko szczegóły dotyczące powiększenia o 0: 180, 1:90, 2:45 podczas przeglądania za pomocą chrome lub IE8 Dostaję poziom powiększenia 0: 127, 1:90, 2:53 ale nie widzę tych wartości udokumentowanych gdziekolwiek indziej – user1268415

Odpowiedz

0

nie mogę znaleźć rozwiązania innego niż użycie FOV 90 stopni, która jest spójna w zoom 1 dla wszystkich przeglądarek, które ja testowałem

1

problem jest ze kiedy api mapy obsługuje korzystanie z płótna z konkretnym przeglądarce

Maps API w wersji 3.7 24 stycznia 2012 obejmowały Włączone canvas Street View na IE 9, Opera i Safari/Windows

używając Maps API 3.6, które nie obsługuje płótno na mapach (z wyjątkiem chrom przeglądarce) otrzymujesz FOV jako 0: 180, 1: 90, 2: 45, 3: 22,5, 4: 11:25

dowolny streetview załadowany w ciągu map obsługiwane płótnie uzyskać FOV jako 0: 127, 1: 90, 2: 53, 3, 28, 4: 14

0

To nie jest bezpośrednia odpowiedź na pytanie, ale może pomaga:

Istnieje nieudokumentowana opcja klasy google.maps.StreetViewPanorama o nazwie "tryb". Będziesz mógł wymusić tryb renderowania, a FOV powinno być takie samo dla np.'HTML5'

Google Maps API custom Street View quality issue

2

Obecnie znajduje się stół here odnoszące zoom i FOV, który mówi:

0=>180 1=>90 2=>45 3=>22.5 4=>11.5

można przekonwertować z zoomem do FOV w javascript tak:

var fov = 180/Math.pow(2,zoom);

+0

I od FOV do powiększenia: 'var zoom = - (Math.log (fov/45) - 2 * Math.log (2))/Math.log (2) ' –

0

Ponieważ wydaje się to być pierwszym wynik na google, dla wszystkich zainteresowanych, można użyć formuły

Math.atan(Math.pow(2, 1 - zoom)) * 360/Math.PI 

uzyskać poziomów powiększenia

0: 127, 1: 90, 2: 53, 3: 28, 4: 14 

nie mogłem znaleźć nigdzie w dokumentacji, ale pasuje idealnie i dane wygląda jak matematyka na cylindryczny rzut.

Powiązane problemy