Javascript 全世界的最大Lat和长边界-谷歌地图API LatLngBounds()
默认情况下,Google Maps地形视图对地图平铺具有无限的平移。您可以使用Javascript 全世界的最大Lat和长边界-谷歌地图API LatLngBounds(),javascript,google-maps,google-maps-api-3,latitude-longitude,Javascript,Google Maps,Google Maps Api 3,Latitude Longitude,默认情况下,Google Maps地形视图对地图平铺具有无限的平移。您可以使用LatLngBounds()来限制这一点,但是我应该使用什么最大和最小坐标来设置视口,使其仅为地球,而不在地图区域之外 北美坐标: var strictBounds = new google.maps.LatLngBounds( new google.maps.LatLng(28.70, -127.50), new google.maps.LatLng(48.85, -55.90) ); 我尝试了(
LatLngBounds()
来限制这一点,但是我应该使用什么最大和最小坐标来设置视口,使其仅为地球,而不在地图区域之外
北美坐标:
var strictBounds = new google.maps.LatLngBounds(
new google.maps.LatLng(28.70, -127.50),
new google.maps.LatLng(48.85, -55.90)
);
我尝试了
(+90,-180)(-90180)
,但运气不佳。有关GPS值的更多详细信息,请阅读本文
该条解释说:
- 纬度是沿格林威治子午线测量的与赤道的距离。该距离以度为单位,范围在南北0º到90º之间李>
- 经度是从格林威治子午线沿赤道测量的距离。该距离以度为单位,范围为0º至180º东、西
请注意,该帖子中的瓷砖计算是针对旧API V2的,但投影应相同。由@Marcelo和@Doc提供的链接有助于理解Lat Lng的推导:
纬度:-85到+85
(出于某种原因,实际上是-85.05115)
经度:-180到+180
在谷歌地图上亲自尝试一下:
获得答案后,请编辑此wiki(或更新您的问题)。谢谢借助谷歌地图,您可以执行以下操作以获取世界的最大纬度和长边界: 1:设置谷歌地图的缩放级别1,同时设置谷歌地图:
mapOptions = {
zoom: 1,
.....
}
2.执行以下操作以获取此地图的东北和西南边界:
map=new google.maps.map(document.getElementById('map-canvas'),
地图选项)
3.它将为您提供以下东北和西南边界:
东北纬度:89.45016124669523
东北经度:180
西南纬度:-87.71179927260242
西南经度:-180
与缩放级别-0类似,它给出以下几点:
东北纬度:89.99346179538875
东北经度:180
西南纬度:-89.98155760646617
西南经度:-180
上述技巧帮助我解决了需要最大lat/long的业务问题 简单地说,采样西北点和西南点的最大和最小坐标?奇怪的是,当你看它的晶格度在90/-90和经度在180/-180之间时,在你的latlong声明中,你没有反转纬度和经度?不,我的代码适用于美国人口的晶格边界。在墨卡托投影上,纬度上升到85和-85,而不是90。我要找的是测试,使用最大最小坐标?然后阅读文章,理解它并测试坐标。我不会帮你做作业的,孩子。谢谢。我必须为java使用以下内容:私有静态最终LatLngBounds EARTH=new LatLngBounds(new LatLng(-84.9,-180),//地图左上角new LatLng(84.9180)//右下角);从LatLngBounds是SW角(-85,-180)到NE角(+85,+180),而不是答案中的左上角到右下角。在多段线工具中尝试了此方法,但似乎没有给出enitre区域,这是一个非常常见的问题。然而,它是最大和最小的经度和纬度值。
mapOptions = {
zoom: 1,
.....
}
// 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();