首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何(容易)导入/显示Nexrad雷达图像,从过去的24小时在谷歌地图?

我如何(容易)导入/显示Nexrad雷达图像,从过去的24小时在谷歌地图?
EN

Stack Overflow用户
提问于 2022-01-17 08:03:11
回答 1查看 107关注 0票数 0

我正在使用爱荷华州地图服务来提供美国的天气雷达图像,就像这里所做的:http://mesonet.agron.iastate.edu/ogc/googlemaps_v3.html (“示例”)。

代码语言:javascript
复制
<script>
  var map;
  function initialize() {
    var mapOptions = {
      zoom: 8,
      center: new google.maps.LatLng(42.5, -95.5),
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById('map_canvas'),
        mapOptions);
    
    var tileNEX = new google.maps.ImageMapType({
        getTileUrl: function(tile, zoom) {
            return "https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0q-900913/" + zoom + "/" + tile.x + "/" + tile.y +".png?"+ (new Date()).getTime(); 
        },
        tileSize: new google.maps.Size(256, 256),
        opacity:0.60,
        name : 'NEXRAD',
        isPng: true
    });

    
    var goes = new google.maps.ImageMapType({
        getTileUrl: function(tile, zoom) {
            return "https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/goes-east-vis-1km-900913/" + zoom + "/" + tile.x + "/" + tile.y +".png?"+ (new Date()).getTime(); 
        },
        tileSize: new google.maps.Size(256, 256),
        opacity:0.60,
        name : 'GOES East Vis',
        isPng: true
    });

    map.overlayMapTypes.push(null); // create empty overlay entry
    map.overlayMapTypes.setAt("0",goes);
    map.overlayMapTypes.push(null); // create empty overlay entry
    map.overlayMapTypes.setAt("1",tileNEX);

    
  }

  google.maps.event.addDomListener(window, 'load', initialize);
</script>

这显示了美国大陆最后一张天气雷达图像的平铺版本,它工作得非常好。现在,我希望能够要求雷达图像,从过去的24小时,就这样。

有一些方法可以轻松获取最后50分钟的雷达图像,如下所述:https://mesonet.agron.iastate.edu/ogc/,例如使用nexrad-n0q-900913-m40m (40分钟前)。这里提到了历史雷达数据图像,例如:http://mesonet.agron.iastate.edu/GIS/ridge.phtml,但我无法理解如何使用它,就像上面给出的“示例”一样。

在“示例”中,整个美国的雷达图像被获取,但在所有其他API:s中,您只能在特定的雷达站获取它。

我应该如何获得最后24小时的历史雷达图像数据的瓷砖,如‘示例’?例如,4小时前对应的雷达图像。

将getTileUrl末尾的时间戳更改为以前的时间戳不起作用。我不知道如何使用WMS (这是唯一的方法吗?)我解决这个问题的唯一想法是每5分钟将平铺的PNG:s保存到服务器,并调用我自己的服务器--但是必须有更好的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2022-01-20 13:36:17

事实证明,人们可以使用下面的url访问以前的雷达图像:

代码语言:javascript
复制
https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/ridge::USCOMP-N0Q-" + formatTimestamp() + "/" + zoom + "/" + tile.x + "/" + tile.y +".png

其中formatTimestamp()是一个时间戳,如yyyymmddhhmm '202201201345‘,其中最后一分钟需要模5,即5或0。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70738160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档