1. 功能简介
在PIE SDK中,所有的制图元素、视图范围以及排版等都可以保存成一个模板,以供多次重复使用。使用时只需要打开该模板,加载相应数据,就可以直接出图了,省去了重复制作图幅的麻烦,方便快捷。
每个地图模板都是一个地图文档(PmdContents),它被保存为*.pmd文件。
[模板文件]
[植被指数模板]
2. 功能实现说明
2.1打开模板
在PIE中,每个显示的地图都是一个地图文档(PmdContents),它可以保存为*.pmd文件。用IMapDocument接口的Open方法可以直接打开地图文档。另外我们还可以从地图文档中获得制图对象。
2.2 实现思路及原理说明
第一步 |
选择模板文件 |
第二步 |
创建一个mapDocument,并打开(open)模板文件 |
第三步 |
调用IPageLayoutControl的LoadPmdFile方法 |
第四步 |
刷新视图 |
2.3 核心接口与方法
接口/类 |
方法 |
说明 |
MapDocument |
Open () |
打开一个地图文档 |
IPageLayoutControl |
LoadPmdFile() |
加载地图文档 |
2.4示例代码
项目路径 |
百度云盘地址下/PIE示例程序/09.专题制图/PagelayoutDemo |
代码位置 |
FormPagelayoutDemo. barButtonItem_Open_ItemClick ()方法 |
视频路径 |
百度云盘地址下/PIE示例程序/09.专题制图/01打开模板/xxx.avi |
示例代码 |
|
1 /// <summary> 2 /// 打开模板 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void barButtonItem_Open_ItemClick (object sender,ItemClickEventArgs e) 7 { 8 //1.选择模板文件 9 OpenFileDialog openFileDialog = new OpenFileDialog(); 10 openFileDialog.Title = "请选择要打开的模板:"; 11 openFileDialog.Multiselect = false; 12 openFileDialog.Filter = "pmd|*.pmd|All Files|*.*"; 13 if (openFileDialog.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; 14 15 string filePath = openFileDialog.FileName; 16 string fileName = System.IO.Path.GetFileNameWithoutExtension(filePath); 17 //2.打开模板 18 IMapDocument mapDocument = new MapDocument(); 19 if (!mapDocument.Open(filePath)) return; 20 //3 load 21 m_pageLayoutControl.LoadPmdFile(filePath); 22 (m_pageLayoutControl as Control).Tag = mapDocument; 23 //4.刷新视图 m_pageLayoutControl.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll); 24 } |
2.5 示例截图
原文地址:https://www.cnblogs.com/PIESat/p/10175657.html
时间: 2024-11-06 03:32:35