esricontrolutils.cs

来自「AE+vb来实现的最短路径的实现功能!gis」· CS 代码 · 共 69 行

CS
69
字号
using System;

using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.MapControl;
//Ismael Chivite
//ESRI Redlands
//March 2005
namespace EvacuationRoutes
{
	/// <summary>
	/// Summary description for ESRIControlUtils.
	/// </summary>
	public class ESRIControlUtils
	{
		public ESRIControlUtils()
		{
			//
			// TODO: Add constructor logic here
			//
		}
		public static ILayer GetLayerFromMap(ESRI.ArcGIS.MapControl.AxMapControl pMapControl,string sLayerName)
		{
			sLayerName = sLayerName.ToLower();
			ILayer pLayer = null;
			int iTotalLayers = pMapControl.LayerCount;
			for (int n = 0; n<iTotalLayers;n++)
			{
				pLayer = pMapControl.get_Layer(n);
				if (pLayer.Name.ToLower() == sLayerName)
				{
					return pLayer;
				}
			}
			return null;
		}
		public static ILayer GetLayerFromMap(ESRI.ArcGIS.SceneControl.AxSceneControl pMapControl,string sLayerName)
		{
			sLayerName = sLayerName.ToLower();
			ILayer pLayer = null;
			int iTotalLayers = pMapControl.Scene.LayerCount;
			for (int n = 0; n<iTotalLayers;n++)
			{
				pLayer = pMapControl.Scene.get_Layer(n);
				if (pLayer.Name.ToLower() == sLayerName)
				{
					return pLayer;
				}
			}
			return null;
		}
		public static ILayer GetLayerFromCompositeLayer(ICompositeLayer pCompositeLayer,string sLayerName)
		{
			sLayerName = sLayerName.ToLower();
			ILayer pLayer = null;
			int iTotalLayers = pCompositeLayer.Count;
			for (int n = 0; n<iTotalLayers;n++)
			{
				pLayer = pCompositeLayer.get_Layer(n);
				string s = pLayer.Name.ToLower();
				if ( s == sLayerName)
				{
					return pLayer;
				}
			}
			return null;
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?