文档详情

AE 最短路径分析.doc

发布:2016-12-31约7.66千字共6页下载文档
文本预览下载声明
ArcEngine 最短路径分析 using System; using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geometry; using ESRI.ArcGIS.Geodatabase; using ESRI.ArcGIS.NetworkAnalysis; namespace GisEditor { /// summary /// 最短路径分析 /// /summary public class ClsPathFinder { ?? private IGeometricNetwork m_ipGeometricNetwork; ?? private IMap m_ipMap; ?? private IPointCollection m_ipPoints; ?? private IPointToEID m_ipPointToEID; ?? private double m_dblPathCost =0; ?? private IEnumNetEID m_ipEnumNetEID_Junctions; ?? private IEnumNetEID m_ipEnumNetEID_Edges; ?? private IPolyline??? m_ipPolyline; ?? #region Public Function ?? //返回和设置当前地图 ?? public IMap SetOrGetMap ?? { ??? set{ m_ipMap = value;} ??? get{return??? m_ipMap;} ?? } ?? //打开几何数据集的网络工作空间 ?? public void OpenFeatureDatasetNetwork(IFeatureDataset FeatureDataset) ?? { ??? CloseWorkspace();??? ??? if (!InitializeNetworkAndMap(FeatureDataset)) ???? Console.WriteLine( 打开network出错); ?? } ?? //输入点的集合 ?? public IPointCollection StopPoints ?? { ??? set{m_ipPoints= value;} ??? get{return??? m_ipPoints;} ?? } ??? ?? //路径成本 ?? public double PathCost ?? { ??? get {return m_dblPathCost;} ?? } ?? ?? //返回路径的几何体 ?? public IPolyline PathPolyLine() ?? { ??? IEIDInfo ipEIDInfo; ??? IGeometry ipGeometry;???? ??? if(m_ipPolyline!=null)return m_ipPolyline; ??? ??? m_ipPolyline = new PolylineClass(); ??? IGeometryCollection ipNewGeometryColl = m_ipPolyline as IGeometryCollection; ??? ??? ISpatialReference ipSpatialReference = m_ipMap.SpatialReference; ??? IEIDHelper ipEIDHelper = new EIDHelperClass(); ??? ipEIDHelper.GeometricNetwork = m_ipGeometricNetwork;?? ??? ipEIDHelper.OutputSpatialReference = ipSpatialReference; ??? ipEIDHelper.ReturnGeometries = true; ??? IEnumEIDInfo ipEnumEIDInfo = ipEIDHelper.CreateEnumEIDInfo(m_ipEnumNetEID_Edges); ??? int count = ipEnumEIDInfo.Count; ??? ipEnumEIDInfo.Reset(); ??? for(int i =0;icount;i++) ??? { ???? ipEIDInfo = ipEnumEIDInfo.Next(); ???? ipGeometry = ipEIDInfo.Geometry; ???? ipNewGeometryColl.AddGeometryCollection( ipGeom
显示全部
相似文档