登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
我按二次开发教程(六)中的方法读取grads数据,并绘图,在切换不同时次的时候,先删除上一时次的图层,再读取新时次的数据,添加新数据的图层,但这样导致切换的时候不连贯,即屏幕先短暂空白一下(删除上一图层),然后才能出现新数据图层,但用MeteoInfo软件切换不同时次时很连贯,没有闪屏出现,这是为什么呢?该怎么修改呢?附代码如下:
 - public int timeindex;
- public MeteoDataInfo aDataInfo = new MeteoDataInfo();
- public GridData press;
- //读取Grads数据
- public void ReadGradsData()
- {
- //Open GrADS data file
- string aFile = Application.StartupPath + "\\Sample\\model.ctl";
- aDataInfo.OpenGrADSData(aFile);
- //设置数据时次
- aDataInfo.TimeIndex = timeindex;
- //Get GridData
- press = aDataInfo.GetGridData("PS");
- }
- //下一时次
- public void NextTimeIndex()
- {
- //删除上一时次的图层
- layersLegend1.ActiveMapFrame.RemoveMeteoLayers();
- layersLegend1.Refresh();
- //读取新的时次的数据
- ReadGradsData(timeindex + 1);
- //Create a legend scheme
- bool hasUndefData = false;
- LegendScheme aLS = LegendManage.CreateLegendSchemeFromGridData(press,
- LegendType.GraduatedColor, ShapeTypes.Polygon, ref hasUndefData);
- //Create a contour layer
- VectorLayer aLayer = DrawMeteoData.CreateShadedLayer(press, aLS, "Shaded_PS");
- //Add layer
- layersLegend1.ActiveMapFrame.AddLayer(aLayer);
- }
|