1功能简介

在数据的处理中会出现根据需求进行元素的位置和显示样式的修改,使元素的形状,空间位置得到改变,下面将介绍基于PIE SDK的元素位置和显示样式的修改。

2功能实现说

2.1.1 实现思路及原理说明

第一步

设置元素Geometry的信息

第二步

获取元素的ID和设置修改后的元素Geometry信息

第三步

修改显示样式

第四步

更新元素

2.1.2 核心接口与方法

接口/类

方法/属性

说明

IGraphicsContainer

UpdateElement(string id, IElement element)

更新元素

2.1.3示例代码

项目路径

百度云盘地址下/PIE示例程序/08元素绘制/08元素的修改

视频路径

百度云盘地址下/PIE视频教程/08元素绘制/08元素的修改.avi

示例代码

         /// <summary>
/// 修改元素的位置和形状 以面元素为例
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripButton_ModifyElement_Click(object sender, EventArgs e)
{
//1.设置空间信息
IPointCollection polygon = new Polygon();
polygon.AddPoint(, , );
polygon.AddPoint(, , );
polygon.AddPoint(, , );
polygon.AddPoint(, , );
polygon.AddPoint(, , ); //2.设置面元素信息并在地图控件中显示
IPolygonElement polyElement = new PolygonElement();
polyElement.Geometry = polygon as IGeometry;
polyElement.Symbol = SystemSymbolSetting.Instance.DefaultFillSymbol;
string id = polyElement.GetID(); mapControlMain.ActiveView.GraphicsContainer.AddElement(polyElement); mapControlMain.PartialRefresh(ViewDrawPhaseType.ViewAll); //3.设置修改空间信息
IPolygonElement polyElement2 = new PolygonElement();
IPointCollection polygon1 = new Polygon();
polygon1.AddPoint(, , );
polygon1.AddPoint(, , );
polygon1.AddPoint(, , );
polygon1.AddPoint(, , );
polygon1.AddPoint(, , );
polyElement2.Geometry = polygon1 as IGeometry; //4.设置修改的符号信息
ISimpleFillSymbol simpleFillSymbol = new SimpleFillSymbol();
simpleFillSymbol.Style = SimpleFillStyle.SFSDense2Pattern;
IFillSymbol fillSybol = simpleFillSymbol as IFillSymbol;
fillSybol.Color = Color.Green;
polyElement2.Symbol = fillSybol; //5修改更新元素 mapControlMain.ActiveView.GraphicsContainer.UpdateElement(id, polyElement2);//更新元素
}

2.1.4示例截图

图一 修改前

图二 修改后

最新文章

  1. ArcGIS Server的Tile的松散型存储(Exploded)
  2. 嵌入式Linux驱动学习之路(十一)按键驱动-中断机制
  3. BestCoder36 1002.Gunner 解题报告
  4. 编写高质量JS代码的68个有效方法(四)
  5. Android 利用Service BroadcastReceiver实现小例子
  6. apache反向代理 负载均衡
  7. 生成唯一的id(转)
  8. CSS3绘制环形进度条
  9. 转:lr_eval_string函数的用法解析
  10. Java文件流应用:复制文件
  11. TCP/IP学习20180805-数据链路层-IP选路
  12. 关于Vue数组操作
  13. CSS回顾(常见问题解决)
  14. 让python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE等请求(新方法)
  15. Lisp小程序,大作用,不该放弃!
  16. 牛客网-乌龟跑步-(四维dfs)
  17. ccf--20140303--命令行选项
  18. 转:string.Format格式化用法
  19. 为什么java实体类需要重写toString方法
  20. 9款原型设计工具与Sketch的强强组合,轻松构建交互原型!

热门文章

  1. python 正则表达式 练习题
  2. Python基础-2
  3. JAVA WEB第0课
  4. android library使用方法
  5. angular 双向绑定
  6. rtabmap and rtabmap_ros make error(rtabmap编译错误)
  7. web渗透测试(上传漏洞)
  8. C# Winform 加载窗体/对象时的等待页面设计
  9. luoguP4868 Preprefix sum
  10. delphi 给字符指针分配内存