ArcEngine二次开发-基于时间滑块实现时空动态分析

参考扩展ArcObjects SDK例子:
http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Sample_Make_a_custom_time_slider/000100000172000000/
Arcgis10.2的时间滑块功能:
http://desktop.arcgis.com/zh-cn/arcmap/10.3/map/time/using-the-time-slider.htm

主要目的:分析不同时期森林干扰(砍伐、火灾和病虫害)情况的时空分布,以及整个区域的累积等量采伐面积(cumulative equivalent clear-cut area(CECA))。
等量采伐面积定义:用于定量化森林的水文恢复情况(由于发生森林干扰,造成森林被破坏,然后树木再生长恢复)。(可参考相关文献:http://xueshu.baidu.com/s?wd=forest+equivalent+clear-cut+area&tn=SE_baiduxueshu_c1gjeupa&cl=3&ie=utf-8&bs=forest+ECA&f=8&rsv_bp=1&rsv_sug2=0&sc_f_para=sc_tasktype%3D%7BfirstSimpleSearch%7D&rsv_spt=3&rsv_n=2)

主要功能界面说明:
左上角:不同颜色代表不同森林干扰类型(有可能发生混合干扰,比如Logging and Fire代表该斑块接连发生砍伐和火灾);
左下角:时间滑块(支持动画播放等功能);
中间:各个森林干扰类型的空间分布;
右边:整个区域的累积等量采伐面积统计图表(红点标记出当前时间滑块选中时间的CECA百分比)。
板块从无到有:代表该区域发生新的森林干扰;
斑块颜色变化:代表从一种干扰类型变为另一种干扰类型。

一、主要功能:

1960年
ArcEngine二次开发-基于时间滑块实现时空动态分析_第1张图片

1980年
ArcEngine二次开发-基于时间滑块实现时空动态分析_第2张图片

2000年
ArcEngine二次开发-基于时间滑块实现时空动态分析_第3张图片

2010年
ArcEngine二次开发-基于时间滑块实现时空动态分析_第4张图片

图层属性表(主要基于这些字段格式):
渲染字段:
ArcEngine二次开发-基于时间滑块实现时空动态分析_第5张图片

时间字段:
ArcEngine二次开发-基于时间滑块实现时空动态分析_第6张图片

二、其他功能介绍(主要参考Arcgis10.2的相关功能,在模仿的基础上扩展):

图层时间属性设置(设置图层时间字段、支持单字段或双字段渲染):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第7张图片

动态渲染参数设置(设置颜色带、支持唯一值渲染和分级渲染):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第8张图片

时间参数滑块设置(设置移动间隔、显示时间范围、动画播放速度、开始结束时间):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第9张图片

右键菜单绘制图表(设置或添加X轴、Y轴数据):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第10张图片

图表参数设置(可设置图表类型、图表标题、XY轴标题、序列属性、图例属性、导出图片):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第11张图片

相关功能类(单一职责):
ArcEngine二次开发-基于时间滑块实现时空动态分析_第12张图片

三、总结:
这些功能主要借助:ArcEngine的时间滑块(接口:ITimeData、ITimeTableDefinition 、ITimeDataDisplay、ITimeExtent等等)和渲染(接口:IUniqueValueRenderer、IClassBreaksRenderer、IBivariateRenderer等等)API,以及VS C#相关图表功能。关键是在熟悉相关API的基础上,进行相互协作整合,从而实现丰富独特的功能。

你可能感兴趣的:(ArcEngine二次开发-基于时间滑块实现时空动态分析)