m0_72524251 2023-02-23 01:36 采纳率: 77.8%
浏览 34
已结题

arcgis链接c#实现最短路径查找

我在arcgis中创建了一个网络模型,可以实现两个停靠点之间的最短路径查找,如何将两者链接起来,实现在form界面中输入起始位置和终点,调用arcgis得到最短路径呢

  • 写回答

2条回答 默认 最新

  • GPT_Pro 2023-02-23 02:52
    关注

    该回答内容部分引用GPT,GPT_Pro更好的解决问题
    要实现这个功能,首先需要在arcgis中创建一个网络模型,用来表示起点和终点之间的最短路径。然后,在C#中进行相应的代码编写,实现从界面上获取起始位置和终点位置,然后通过arcgis中的API将这些信息传入到arcgis中去。

    //首先引用arcgis dll库
    using ESRI.ArcGIS.Geodatabase;
    using ESRI.ArcGIS.DataSourcesNetworkAnalyst;
    using ESRI.ArcGIS.esriSystem; 
    //定义起始位置及终点位置的变量
    string startPoint, endPoint;
    //从界面上获取起始位置和终点位置 
    startPoint = textBox1.Text; 
    endPoint = textBox2.Text;
    //定义arcgis network analyst对象 
    INetworkAnalysisExt networkAnalyst=new NetworkAnalysisExtClass();
    //传入起始位置及终点位置 
    networkAnalyst.FindPath(startPoint,endPoint);
    //获取最小路径 
    INetworkResult networkResult= (INetworkResult)networkAnalyst.GetResult(0); 
    //通过遍历networkResult对象,获取最小路径 
    for(int i=0;i<networkResult.PathCount;i++) 
    { 
        IPath path= (IPath)networkResult.get_Path(i); 
        //打印最小路径信息 
        Console.WriteLine(path.ToString()); 
    } 
    

    如果回答有帮助,望采纳。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月12日
  • 创建了问题 2月23日

悬赏问题

  • ¥15 MusePose 部署安装问题,安装后无法启动
  • ¥15 Psexec获得电脑system权限该怎么操作,有偿
  • ¥50 python+flask实现流式api接口的问题
  • ¥20 关于#vue.js#的问题:后端返回的代码如下,根据后端返回的数据在页面上重新展示
  • ¥15 visual studio 社区版离线激活失败了
  • ¥30 python密码表示
  • ¥15 Flask应用部署到阿里云服务器失败,无法访问网页,问题出在哪里?
  • ¥15 有什么好的直流步进减速电机42的厂家推荐,保持力矩达到0.3N.M
  • ¥15 一道蓝桥杯的题,请问我错在哪里
  • ¥15 关于#android问题,xposed模块找不到so