Maximum Lat et Long limites pour le monde – Google Maps API LatLngBounds ()

La vue de terrain de Google Maps par défaut affiche un panoramique illimité de la mosaïque de la carte. Vous pouvez utiliser LatLngBounds() pour limiter cela, mais quelles sont les coordonnées minimales et minimales que je devrais utiliser pour configurer la fenêtre comme juste la Terre et pas en dehors de la région de la carte?

Coordonnées pour l'Amérique du Nord:

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

J'ai essayé (+90, -180)(-90,180) sans chance.

Les liens fournis par @Marcelo & @Doc sont bons pour comprendre la dérivation de Lat Lng:

Mais si vous voulez juste une réponse pour les limites maximales pour Google Maps :

Latitude: -85 to +85 (en fait -85.05115 pour une raison quelconque )

Longitude: -180 to +180

Essayez -le vous-même sur Google Maps:

(Vous devrez peut-être diminuer . Voyez comment la broche est au «bord» du monde – ce sont les limites )

Donc dans votre code Essayez :

 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 ); 

Veuillez modifier ce wiki (ou mettre à jour votre question) une fois que vous avez la réponse. Merci

Consultez cette publication dans les anciens Groupes Google, qui décrit les calculs de la projection.

Citation:

La carte ne commence pas à 85 degrés, mais plutôt le degré qui rend la carte carrée. Ceci peut être simplement calciné comme: atan (sinh (PI)) * 180 / PI = 85.05112878 ….

Notez que le calcul de la tuile dans cette publication est pour l'ancienne API V2, mais la projection devrait être la même.

Vous pouvez faire ce qui suit pour obtenir les limites Max Lat et Long du monde avec l'aide de Google Maps:

1: Définissez le niveau de zoom 1 de Google Maps lors de la configuration de Google Map Stuff:

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

2. Faites ce qui suit pour obtenir NorthEast et SouthWest Bound de cette carte:

Map = new 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. Il vous donnera les limites suivantes du Nord-Est et de SouthWest:

Latitude nord: 89.45016124669523

Nord-est Longitude: 180

SouthWest Latitude: -87.71179927260242

Longitude sud-ouest: -180

De même sur le niveau de zoom 0, il donne les points suivants:

Latitude Nord: 89.99346179538875

Nord-est Longitude: 180

Sud-Ouest Latitude: -89.98155760646617

Longitude sud-ouest: -180

Une astuce ci-dessus m'a aidé à résoudre le problème de mon entreprise qui nécessitait max lat / long.

Pour plus de détails sur les valeurs GPS, vous pouvez lire cet article.

L'article explique que:

  • Latitude est la distance de l'équateur mesurée le long du méridien de Greenwich. Cette distance est mesurée en degrés et varie entre 0º et 90º Nord et Sud.
  • La longitude est la distance du méridien de Greenwich mesurée le long de l'équateur. Cette distance est mesurée en degrés et varie de 0º à 180º Est et Ouest.