【问题标题】:What is the formula for resolution for longitude (for latitude works perfectly) (google maps)?经度分辨率的公式是什么(纬度完美)(谷歌地图)?
【发布时间】:2018-12-04 10:56:33
【问题描述】:

地理现象和地理特征的表达是多尺度的。
尺度表示对地物的理解程度和定位精度。 分辨率和刻度通常用于测量刻度。 GIS中的分辨率,也称为地面分辨率或空间分辨率,表示一个像素所代表的实际距离。 以 googlemap 为例:The zoom level is 1
共有四张图片,大小为256*256。 赤道的空间分辨率为:地球赤道周长(实际距离)除​​以256 * 2(像素大小)。其他纬度的分辨率为:the length of latitude circle / 512

所以可以看出,分辨率是由两个因素决定的: 纬度和缩放级别。

缩放级别决定像素数。纬度决定了地面距离。所以googlemap在某视图下的分辨率可以通过以下公式计算(单位:meter/pixel):

F(X,Y) = (cos(X*PI/180)*2*PI*R)/(256*2^Y)

F(X,Y): Map resolution;
X: Latitude;
Y: Zoom level;
R: Constant 6378137 represents earth radius.
Unit: meter.

经度分辨率的公式是什么(纬度完美)? (谷歌地图)

【问题讨论】:

标签: google-maps latitude-longitude


【解决方案1】:

有一个谷歌地图功能可以让你找到地图的边界框。

var map;
function initialize() {
  var mapOptions = {
    center: { lat: -34.397, lng: 150.644},
    zoom: 8
  };
  map = new google.maps.Map(document.getElementById('map-canvas'),
      mapOptions);
  //get the bounds:
  console.log(map.getBounds);
}
google.maps.event.addDomListener(window, 'load', initialize);

这将记录如下内容:

-35.841477973835374, 153.5718564453125
-32.92715336680372, 147.7161435546875

Google 地图使用墨卡托投影。这意味着经度从地图的一侧相对于另一侧延伸。但是,可以通过经度除以屏幕宽度的差值得出准确的近似值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多