Widok terenowy Google Maps domyślnie ma nieograniczone przesuwanie płytek mapy. Możesz użyć tego LatLngBounds(), aby ograniczyć to, ale jakie są maksymalne i minimalne współrzędne, powinienem użyć do ustawiania rzutni jako tylko ziemi, a nie na zewnątrz regionu mapy?

Współrzędne dla Ameryki Północnej:

var strictBounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(28.70, -127.50), 
    new google.maps.LatLng(48.85, -55.90)
);

Próbowałem (+90, -180)(-90,180) nie ma szczęścia.

45
Ryan Brodie 7 sierpień 2012, 19:52

4 odpowiedzi

Najlepsza odpowiedź

Linki dostarczone przez @marcelo & AMP; @Doc są dobra do zrozumienia wyprowadzenia Lat LNG:

Ale jeśli tylko chcesz odpowiedzieć na maksymalne granice dla Google Maps :

Latitude: -85 to +85 ( -85.05115 z jakiegoś powodu )

Longitude: -180 to +180

spróbuj dla siebie na mapach Google:

(Może być konieczne pomniejszanie . Zobacz, jak pin jest na "krawędzi świata - to są limity )

Więc w kodzie spróbuj :

var strictBounds = new google.maps.LatLngBounds(
    new google.maps.LatLng(85, -180),           // top left corner of map
    new google.maps.LatLng(-85, 180)            // bottom right corner
);

Wydaj tę wiki (lub zaktualizuj swoje pytanie), gdy masz odpowiedź. Dzięki

90
2 revs, 2 users 98% 3 grudzień 2019, 14:57

Zobacz Ten post W starych grupach Google opisuje matematykę projekcji.

Zacytować:

Mapa nie rozpoczyna się od 85 stopni, ale raczej stopień, który sprawia, że plac mapy. Można to być po prostu kalakatowane jako: ATAN (SINH (PI)) * 180 / PI = 85.05112878 ....

Należy pamiętać, że obliczenie płytek w tym poście jest przeznaczone dla starego API V2, ale projekcja powinna być taka sama.

12
Community 20 czerwiec 2020, 09:12

Możesz wykonać następujące czynności, aby uzyskać maksymalne lata i długie granice świata za pomocą pomocy Google Maps:

1: Ustaw Poziom zoomu 1 map Google podczas konfigurowania rzeczy Google Map:

mapOptions = {
                zoom: 1,
 .....
}

2. Wykonaj następujące czynności, aby uzyskać północno-wschodnią i południowo-zachodnią tę mapę:

Mapa = Nowy Google.Maps.map (Document.getElementById ("Map-Canvas '), MapOptions);

     // NorthEast Latitude : 89.45016124669523
     var latNEValue =  map.getBounds().getNorthEast().lat();
    // NorthEast Longitude : 180
     var longNEValue = map.getBounds().getNorthEast().lng();
     // SouthWest Latitude : -87.71179927260242
     var latSWValue =  map.getBounds().getSouthWest().lat();
     // Southwest Latitude :  -180
     var longSWValue = map.getBounds().getSouthWest().lng();

3. Daje Ci następujące granice północno-wschodniej i południowo-zachodniej:

Northeast Latitude: 89.45016124669523

Northeast Gide: 180

Southwest Latitude: -87.7179927260242

Southwest Długość geograficzna: -180

Podobnie na poziomie zoomu, daje następujące punkty:

Northeast Latitude: 89.99346179538875

Northeast Gide: 180

Southwest Gitude: -89.98155760646617

Southwest Długość geograficzna: -180

Powyższa sztuczka pomogła mi rozwiązać mój problem biznesowy, który wymagał Max Lat / Long.

6
Sumit Arora 11 grudzień 2015, 12:05

Aby uzyskać więcej informacji w wartościach GPS, możesz przeczytać To Artykuł.

Artykuł wyjaśnia, że:

  • Szerokość jest odległością od równika mierzonego wzdłuż południka Greenwich. Odległość ta mierzy się w stopniach i waha się od 0 ° do 90º na północ i południe.
  • Długość geograficzna jest odległość od południka Greenwich mierzona wzdłuż równika. Odległość ta mierzy się w stopniach i waha się od 0 ° do 180º East i West.
3
Doc Roms 7 sierpień 2012, 16:02