Arcgis Engine最短路径分析

本文档详细介绍了如何使用ArcGIS Engine在C#应用程序中进行最短路径分析。通过实例代码,展示了如何利用GIS技术找到地图上两点之间的最优路径。
摘要由CSDN通过智能技术生成
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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值