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 /// 2 /// 面元素绘制 3 /// 4 /// 5 /// 6 private void tbn_DrawElement_Click(object sender, EventArgs e) 7 { 8 m_Flag = 1;//m_Flag全局变量 9 }10 11 /// 12 /// 保存元素13 /// 14 /// 15 /// 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 /// 24 /// 打开元素25 /// 26 /// 27 /// 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 /// 36 /// 鼠标点击事件37 /// 38 /// 39 /// 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. 示例截图