1. 功能简介

时间序列数据(time series data)是在不同时间上收集到的数据,这类数据是按时间顺序收集到的,用于所描述现象随时间变化的情况。当前随着遥感卫星技术日新月异的发展,遥感卫星的重访周期越来越短,外加历史数据的积累,产生了海量的遥感时间序列数据产品,这些数据真实地反映了地表在一段时间范围内的动态变化情况,成为了遥感影像信息提取和分析的重要数据参考。

       

       

[洞庭湖春、夏、秋、冬季影像图]

PIE支持长时间序列卫星影像数据的加载和动态显示,并且提供了便利的控制方式。

2. 功能实现说明

2.1 实现思路及原理说明

第一步

获取数据(序列化栅格数据至少两个数据)

第二步

将栅格图层添加至动画图层Animation对象中

第三步

将动画图层添加到地图中进行播放

2.2  核心接口与方法

接口/类

方法

说明

Carto. IAnimationLayer

AddLayer()

增加图层

Start()

开始图层播放

Pause()

暂停图层播放

Resume()

继续播放

SetInterval(int msec)

设置播放间隔

GetAnimationState

获取当前的动画状态

2.3  示例代码

项目名称

百度云盘地址下/PIE示例程序/03.数据加载/08.打开长时间序列数据

项目位置

百度云盘地址下/PIE示例数据/栅格数据/05.长时间序列数据/

代码位置

百度云盘地址下/PIE视频教程/03.数据加载/08.打开长时间序列数据.avi

示例代码

         /// <summary>
/// 动画图层
/// </summary>
private IAnimationLayer m_AnimationLayer = null; /// <summary>
/// 加载长时间序列数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_OpenSeriesData_Click(object sender, EventArgs e)
{
//1、获取数据
IList<string> listFile = new List<string>();
OpenFileDialog openDialog = new OpenFileDialog();
openDialog.Multiselect = true;
openDialog.Title = "打开长时间序列数据";
openDialog.Filter = "SeriesData(*.tiff)|*.tiff;*.tif";
if (openDialog.ShowDialog() != DialogResult.OK) return; //2、加载动画图层
ILayer tempLayer = null;
m_AnimationLayer = new AnimationLayer();
foreach (var fileName in openDialog.FileNames)
{
tempLayer = LayerFactory.CreateDefaultLayer(fileName);
m_AnimationLayer.AddLayer(tempLayer);
} ILayer layer = m_AnimationLayer as ILayer;
layer.Name = "长时间序列数据";
mapControlMain.FocusMap.AddLayer(layer);
mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
m_AnimationLayer.SetInterval();//设置时间间隔
m_AnimationLayer.Start();//开始播放
} /// <summary>
/// 继续播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Start_Click(object sender, EventArgs e)
{
m_AnimationLayer.Resume();
}
/// <summary>
/// 暂停播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Pause_Click(object sender, EventArgs e)
{
m_AnimationLayer.Pause();
} /// <summary>
/// 结束播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_End_Click(object sender, EventArgs e)
{
m_AnimationLayer.Stop();
}

2.4 示例截图

PIE SDK打开长时间序列数据的更多相关文章

  1. PIE SDK打开网络地图数据

    1. 数据介绍 网络地图数据是在线地图服务发布出来的数据,其支持数据的网络查看和传输,极大的促进了GIS的发展. 目前PIE SDK支持百度地图.谷歌地图.高德地图.天地图.Bing地图.ArcGIS ...

  2. PIE SDK打开HDF、NC数据

    1. 功能简介 HDF 是美国国家高级计算应用中心(National Center for Supercomputing Application)为了满足各种领域研究需求而研制的一种能高效存储和分发科 ...

  3. PIE SDK打开矢量数据

    1. 功能简介 GIS将地理空间数据表示为矢量数据和栅格数据.矢量数据模型使用点.线和多边形来表示具有清晰空间位置和边界的空间要素,如控制点.河流和宗地等,每个要素被赋予一个ID,以便与其属性相关联. ...

  4. PIE SDK打开栅格数据

    1. 功能简介 GIS将地理空间数据表示为矢量数据和栅格数据.矢量数据模型使用点.线和多边形来表示具有清晰空间位置和边界的空间要素,如控制点.河流和宗地等,每个要素被赋予一个ID,以便与其属性相关联. ...

  5. PIE SDK打开自定义栅格数据

    1. 数据介绍 信息提取和解译的过程中,经常会生成一部分中间临时栅格数据,这些数据在执行完对应操作后就失去了存在的价值,针对这种情况,PIE增加了内存栅格数据集,来协助用户完成对自定义栅格数据的读取和 ...

  6. PIE SDK打开自定义矢量数据

    1. 数据介绍 信息提取和解译的过程中,经常会生成一部分中间临时矢量数据,这些数据在执行完对应操作后就失去了存在的价值,针对这种情况,PIE增加了内存矢量数据集,来协助用户完成对自定义矢量数据的读取和 ...

  7. PIE SDK打开GDB、Dwg数据

    1. 功能简介 目前不同的GIS软件平台具有自己独特支持的数据格式,如ESRI的File GeoDataBase和Personal GeoDataBase.MapInfo的mif数据.AutoCAD的 ...

  8. PIE SDK打开静止卫星数据

    1. 功能简介 静止卫星是位于地球赤道上空约3.58万km处,与地面始终保持相对静止的卫星,静止卫星的特点是覆盖区域广,具有很强的机动灵活性,能够对特定区域进行分钟级高重复观测,可快速监测灾害目标的动 ...

  9. PIE SDK打开Micaps数据

    1. 功能简介 Micaps数据是气象信息处理和天气预报制作中的一种气象数据格式.其包含多种气象信息产品(地面常规气象观测数据产品.高空常规气象观测数据产品等),目前Micaps数据被Micaps软件 ...

随机推荐

  1. c# 多维数组、交错数组(转化为DataTable)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. Entity Framework在不同数据库下的配置

    http://blog.csdn.net/weiky626/article/details/17068593 http://blog.csdn.net/niewq/article/details/41 ...

  3. 关于.net DateTime 的一些事儿

    最近开发的过程中遇到一种情况,在.net 程序中获取的Datetime格式的时间,在存入SQL server中,毫秒部分丢失. 这个是个很奇怪的状况,因为在Debug的时候,Datetime的变量的确 ...

  4. 数据库索引与b+树

    数据库索引详解 索引 当我们在设计数据库的时候,对表的一些属性有时会加上索引,但索引为什么能提高检索速率呢?是不是用了索引就一定可以提高效率呢?不同索引之间有什么区别呢?搞懂这些问题是灵活运用索引的必 ...

  5. C# Task的使用

    1.Task的使用 创建一个Task,有三种方式 //第一种 Task t1 = new Task(() => { Console.WriteLine(DateTime.Now.ToString ...

  6. mysql 字符串的截取与连接

    mysql 字符串的截取   left() .right() .  substring()[ mid() .substr() 等价于substring() ] .substring_index() l ...

  7. Tomcat类加载机制触发的Too many open files问题分析(转)

    https://blog.csdn.net/ctrip_tech/article/details/53337137 说起Too many open files这个报错,想必大家一定不陌生.在Linux ...

  8. 获取表单提交的数据getParameter()方法

    请求对象:request public String getParameter(String name); 通过request的getParameter(String name)方法获取 表单里面的n ...

  9. node创建一个简单的web服务

    本文将如何用node创建一个简单的web服务,过程也很简单呢~ 开始之前要先安装node.js 1.创建一个最简单的服务 // server.js const http = require('http ...

  10. 搭建 docker + nginx + keepalived 实现Web应用的高可用(亲测)

    1. 环境准备     下载 VMware : https://www.vmware.com/go/getplayer-win        下载 Centos : https://mirrors.a ...