ArcGIS Engine + C# 图层符号选择器的实现

ArcGIS Engine + C# 图层符号选择器的实现

ID:37708284

大小:207.80 KB

页数:25页

时间:2019-05-29

ArcGIS Engine + C# 图层符号选择器的实现_第1页
ArcGIS Engine + C# 图层符号选择器的实现_第2页
ArcGIS Engine + C# 图层符号选择器的实现_第3页
ArcGIS Engine + C# 图层符号选择器的实现_第4页
ArcGIS Engine + C# 图层符号选择器的实现_第5页
资源描述:

《ArcGIS Engine + C# 图层符号选择器的实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ArcGISEngine+C#图层符号选择器的实现图1在AE开发中,符号选择器有两种实现方式。一是在程序中直接调用ArcMap中的符号选择器,如下所示:图2二是自定义符号选择器,如图1所示。由于第一种方式前提是必须安装ArcGISDesktop,其界面还是英文的,而对二次开发来说,大部分用户希望应该是中文界面。因此开发人员通常选择第二种方式,本讲也着重讲解第二种方式。直接调用ArcMap中的符号选择器(1)添加ESRI.ArcGIS.DisplayUI的引用。分别在解决方案管理器和代码中添加引用。(2)添加TOCControl的Double_

2、Click事件。(3)实现TOCControl的Double_Click事件。因为种方法不是本讲的重点,故不对代码进行分析,有兴趣的读者请自行理解或结合后面的内容理解。代码如下:privatevoidaxTOCControl1_OnDoubleClick(objectsender,ITOCControlEvents_OnDoubleClickEvente){esriTOCControlItemtoccItem=esriTOCControlItem.esriTOCControlItemNone;ILayeriLayer=null;IBasicM

3、apiBasicMap=null;objectunk=null;objectdata=null;if(e.button==1){axTOCControl1.HitTest(e.x,e.y,reftoccItem,refiBasicMap,refiLayer,refunk,refdata);System.Drawing.Pointpos=newSystem.Drawing.Point(e.x,e.y);if(toccItem==esriTOCControlItem.esriTOCControlItemLegendClass){ESRI.ArcG

4、IS.Carto.ILegendClasspLC=newLegendClassClass();ESRI.ArcGIS.Carto.ILegendGrouppLG=newLegendGroupClass();if(unkisILegendGroup){pLG=(ILegendGroup)unk;}pLC=pLG.get_Class((int)data);ISymbolpSym;pSym=pLC.Symbol;ESRI.ArcGIS.DisplayUI.ISymbolSelectorpSS=newESRI.ArcGIS.DisplayUI.Sym

5、bolSelectorClass();boolbOK=false;pSS.AddSymbol(pSym);bOK=pSS.SelectSymbol(0);if(bOK){pLC.Symbol=pSS.GetSymbolAt(0);}this.axMapControl1.ActiveView.Refresh();this.axTOCControl1.Refresh();}}}(4)编译运行即可。自定义符号选择器AE9.2提供了SymbologyControl控件,极大的方便了图层符号选择器的制作。本讲实现的符号选择器有如下功能。用户双击TOCC

6、ontrol控件中图层的符号时,弹出选择符号对话框,对话框能够根据图层类型自动加载相应的符号,如点、线、面。用户可以调整符号的颜色、线宽、角度等参数。还可以打开自定义的符号文件(*.ServerStyle),加载更多的符号。新建符号选择器窗体新建Winodws窗体,命名为SymbolSelectorFrm,修改窗体的Text属性为“选择符号”。并添加SymboloryControl、PictureBox、Button、Label、NumericUpDown、GroupBox、ColorDialog、OpenFileDialog、Context

7、MenuStrip控件。控件布局如下所示:设置控件属性设置相应控件的相关属性,如下表所示(空则不用修改):控件Name属性Text属性其它SymbologyControlaxSymbologyControlPictureBoxptbPreviewLabellblColor颜色LabellblSize大小LabellblWidth线宽LabellblAngle角度LabellblOutlineColor外框颜色NumericUpDownnudSizeNumericUpDownnudWidthNumericUpDownnudAngleButton

8、btnColor(设置为空)ButtonbtnOutlineColor(设置为空)ButtonbtnMoreSymbols更多符号ButtonbtnOK确定Dial

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。