時間序列數據(time series data)是在不一樣時間上收集到的數據,這類數據是按時間順序收集到的,用於所描述現象隨時間變化的狀況。當前隨着遙感衛星技術突飛猛進的發展,遙感衛星的重訪週期愈來愈短,外加歷史數據的積累,產生了海量的遙感時間序列數據產品,這些數據真實地反映了地表在一段時間範圍內的動態變化狀況,成爲了遙感影像信息提取和分析的重要數據參考。 ide
[洞庭湖春、夏、秋、冬季影像圖]動畫
PIE支持長時間序列衛星影像數據的加載和動態顯示,而且提供了便利的控制方式。spa
第一步3d |
獲取數據(序列化柵格數據至少兩個數據)code |
第二步視頻 |
將柵格圖層添加至動畫圖層Animation對象中對象 |
第三步blog |
將動畫圖層添加到地圖中進行播放教程 |
接口/類接口 |
方法 |
說明 |
Carto. IAnimationLayer |
AddLayer() |
增長圖層 |
Start() |
開始圖層播放 |
|
Pause() |
暫停圖層播放 |
|
Resume() |
繼續播放 |
|
SetInterval(int msec) |
設置播放間隔 |
|
GetAnimationState |
獲取當前的動畫狀態 |
項目名稱 |
百度雲盤地址下/PIE示例程序/03.數據加載/08.打開長時間序列數據 |
項目位置 |
百度雲盤地址下/PIE示例數據/柵格數據/05.長時間序列數據/ |
代碼位置 |
百度雲盤地址下/PIE視頻教程/03.數據加載/08.打開長時間序列數據.avi |
示例代碼 |
|
![]() 1 /// <summary> 2 /// 動畫圖層 3 /// </summary> 4 private IAnimationLayer m_AnimationLayer = null; 5 6 /// <summary> 7 /// 加載長時間序列數據 8 /// </summary> 9 /// <param name="sender"></param> 10 /// <param name="e"></param> 11 private void btn_OpenSeriesData_Click(object sender, EventArgs e) 12 { 13 //一、獲取數據 14 IList<string> listFile = new List<string>(); 15 OpenFileDialog openDialog = new OpenFileDialog(); 16 openDialog.Multiselect = true; 17 openDialog.Title = "打開長時間序列數據"; 18 openDialog.Filter = "SeriesData(*.tiff)|*.tiff;*.tif"; 19 if (openDialog.ShowDialog() != DialogResult.OK) return; 20 21 //二、加載動畫圖層 22 ILayer tempLayer = null; 23 m_AnimationLayer = new AnimationLayer(); 24 foreach (var fileName in openDialog.FileNames) 25 { 26 tempLayer = LayerFactory.CreateDefaultLayer(fileName); 27 m_AnimationLayer.AddLayer(tempLayer); 28 } 29 30 ILayer layer = m_AnimationLayer as ILayer; 31 layer.Name = "長時間序列數據"; 32 mapControlMain.FocusMap.AddLayer(layer); 33 mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll); 34 m_AnimationLayer.SetInterval(500);//設置時間間隔 35 m_AnimationLayer.Start();//開始播放 36 } 37 38 /// <summary> 39 /// 繼續播放 40 /// </summary> 41 /// <param name="sender"></param> 42 /// <param name="e"></param> 43 private void btn_Start_Click(object sender, EventArgs e) 44 { 45 m_AnimationLayer.Resume(); 46 } 47 /// <summary> 48 /// 暫停播放 49 /// </summary> 50 /// <param name="sender"></param> 51 /// <param name="e"></param> 52 private void btn_Pause_Click(object sender, EventArgs e) 53 { 54 m_AnimationLayer.Pause(); 55 } 56 57 /// <summary> 58 /// 結束播放 59 /// </summary> 60 /// <param name="sender"></param> 61 /// <param name="e"></param> 62 private void btn_End_Click(object sender, EventArgs e) 63 { 64 m_AnimationLayer.Stop(); 65 } |