PIE SDK元素的保存与打开
1、功能简介
绘制元素之后需要对元素进一步的保存操作,可以利用PIE SDK的ExportElementsCommand命令保存成xml格式的文件,打开元素可以利用ImportElementsCommand命令将保存的xml文件导入带地图中。调用简单易于实现。
2、功能实现说
2.1. 实现思路及原理说明
第一步 |
New对应的保存和打开元素的命令函数 |
第二步 |
创建插件对象OnCreate() |
第三步 |
调用ICommand的OnClick() |
2.2. 核心接口与方法
接口/类 |
方法 |
说明 |
PIE.Controls |
ExportElementsCommand |
导出元素 |
ImportElementsCommand |
导入元素 |
|
PIE.SysUI.ICommand |
OnCreate |
创建插件对象 |
OnClick |
点击事件 |
2.3. 示例代码
项目路径 |
百度云盘地址下/PIE示例程序/ 08元素绘制/09元素的保存和打开 |
视频路径 |
百度云盘地址下/PIE视频教程/08元素绘制/09元素的保存和打开.avi |
示例代码 |
|
1 /// <summary> 2 /// 面元素绘制 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void tbn_DrawElement_Click(object sender, EventArgs e) 7 { 8 m_Flag = 1;//m_Flag全局变量 9 } 10 11 /// <summary> 12 /// 保存元素 13 /// </summary> 14 /// <param name="sender"></param> 15 /// <param name="e"></param> 16 private void tbn_SaveElement_Click(object sender, EventArgs e) 17 { 18 PIE.SystemUI.ICommand cmd = new PIE.Controls.ExportElementsCommand(); 19 cmd.OnCreate(mapControlMain); 20 cmd.OnClick(); 21 } 22 23 /// <summary> 24 /// 打开元素 25 /// </summary> 26 /// <param name="sender"></param> 27 /// <param name="e"></param> 28 private void tbn_OpenElement_Click(object sender, EventArgs e) 29 { 30 PIE.SystemUI.ICommand cmd = new PIE.Controls.ImportElementsCommand(); 31 cmd.OnCreate(mapControlMain); 32 cmd.OnClick(); 33 34 } 35 /// <summary> 36 /// 鼠标点击事件 37 /// </summary> 38 /// <param name="sender"></param> 39 /// <param name="e"></param> 40 private void mapControlMain_MouseDown(object sender, MouseEventArgs e) 41 { 42 if (e.Button == MouseButtons.Left)//左键 43 { 44 if (m_Flag == 1) 45 { 46 IPolygonElement polygonElement = new PolygonElement(); 47 polygonElement.Geometry = (mapControlMain.TrackRectangle()) as IGeometry; 48 polygonElement.Symbol = PIE.Display.SystemSymbolSetting.Instance.DefaultFillSymbol; 49 mapControlMain.ActiveView.GraphicsContainer.AddElement(polygonElement); mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll); 51 } 52 } 53 }
|
2.4. 示例截图