显示动画的雷达图像的背景
这个例子展示了如何显示NEXRAD雷达图像。图片覆盖过去24小时,每隔一小时取样,对美国使用数据从IEM WMS服务器。
搜索的WMS数据库“nexrad-n0r-wmst”
层。与服务器同步层。
wmst = wmsfind (“nexrad-n0r-wmst”,“SearchField”,“layername”);wmst = wmsupdate (wmst);
搜索的WMS数据库生成的圆锥复合红外图像。与服务器同步层。
是= wmsfind (的是圆锥* *和红外,“SearchField”,“layername”);是= wmsupdate(去);
创建一个地图美国相接的。
hfig =图;地区=“本土”;usamap(地区)边界= geoshow (“usastatehi.shp”,“FaceColor”,“没有”);
得到地图的经度和纬度限制。
mstruct = gcm;latlim = mstruct.maplatlimit;lonlim = mstruct.maplonlimit;
读了层作为背景图像。
cellsize = 0.1;(背景下,R) = wmsread (,“ImageFormat”,“图像/ png”,…“Latlim”latlim,“Lonlim”lonlim,“Cellsize”,cellsize);
找到当前时间- 24小时。设置帧的数据getframe
。
now_m24 = datestr (1);hour_m24 = [now_m24(1:录得5个)“0”];小时= datenum (hour_m24);hmap = [];numFrames = 24;帧=结构(cdata的[],“colormap”[]);帧(numFrames) =帧;
设置可见
属性的图“关闭”
在填充框架隐藏图。每一小时,每小时获得NEXRAD地图数据,结合背景下的一个副本。因为这个Web服务器如何处理PNG格式,生成的地图数据和类图像双
。因此,你必须把它转换成uint8
在合并之前。
hfig。可见=“关闭”;为k = 1: numFrames时间= datestr(小时);[R] = wmsread (wmst“Latlim”latlim,“Lonlim”lonlim,…“时间”、时间、“CellSize”cellsize,…“写成BackgroundColor”(0 0 0),“ImageFormat”,“图像/ png”);删除(hmap)指数= (> 0,3);结合=背景;指数=猫(3、索引、索引、索引);组合(指数)= uint8(255 *(索引));hmap = geoshow(组合,R);uistack(边界,“高级”标题({wmst.LayerName,时间})帧(k) = getframe (hfig);小时=时间+ 1/24;结束
设置可见
属性的图“上”
。查看电影循环三次1.5帧每秒。
hfig。可见=“上”;宋惠乔电影(hfig,框架,3,1.5)