GP的功能非常强大,也是GIS建模的一个很重要的工具。在Arcengine中,实现Clip功能很多种方法,可以用IBasicGeoprocessor的clip方法,但是GP无疑是最简单的。

public Clip(
objectin_cover,
objectclip_cover,
objectout_cover
)
输入这三个参数,即可实现clip功能,第一个参数为输入要素,第二个为裁剪要素,最后为保存路径  string SavePath= @"F:\shiyan\最后的战役\ww2.shp";
      //保存路径    
  string file=   System.IO.Path.GetDirectoryName(SavePath);
        //获取保存目录
  string filename=System.IO.Path.GetFileName(SavePath);
         //获取保存文件名
  string name = System.IO.Path.GetFileNameWithoutExtension(SavePath); //获取不带后缀的文件名

Geoprocessor g = new Geoprocessor();
            g.OverwriteOutput = true;
            //ESRI.ArcGIS.AnalysisTools.Clip clip = new Clip(@"F:\shiyan\最后的战役\New_Shapefile(3).shp", @"F:\shiyan\最后的战役\New_Shapefile(4).shp", @"F:\shiyan\最后的战役\ww1.shp");
            ESRI.ArcGIS.AnalysisTools.Clip clip = new Clip(featurelayer1, featurelayer2, SavePath); //两种方法皆可
           IGeoProcessorResult result=(IGeoProcessorResult) g.Execute(clip, null);
           if (result.Status == esriJobStatus.esriJobSucceeded)  //运行状态
           {
               MessageBox.Show("成功!");
           }

// 将得到的结果添加到图层

IWorkspaceFactory factory = new ShapefileWorkspaceFactoryClass();
            IWorkspace workspace=  factory.OpenFromFile(file,0);
            IFeatureWorkspace featureworkspace = workspace as IFeatureWorkspace;
            IFeatureClass featureclass=   featureworkspace.OpenFeatureClass(filename);
            IFeatureLayer layer = new FeatureLayerClass();
            layer.FeatureClass = featureclass;
            layer.Name = name;
            axMapControl1.AddLayer(layer);
        }

GP调用arctoolbox 以Clip为例的更多相关文章

  1. AES加密 C++调用Crypto++加密库 样例

    这阵子写了一些数据加密的小程序,对照了好几种算法后,选择了AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES).听这名字就非常厉害的样子 预计会搜索到这 ...

  2. PHPCMS中GET标签概述、 get 标签语法、get 标签创建工具、get 调用本系统演示样例、get 调用其它系统演示样例

    一.get 标签概述 通俗来讲,get 标签是Phpcms定义的能直接调用数据库里面内容的简单化.友好化代码,她可调用本系统和外部数据,仅仅有你对SQL有一定的了解,她就是你的绝世好剑!也就是适合熟悉 ...

  3. arcengine 调用arctoolbox功能的举例 spatialJoin

    废话不多说,code是王道. 其中str1.str2两个参数是target路径.join路径 private void spatialJoin(Geoprocessor gp, string str1 ...

  4. JAVA调用WebService接口(以调用第三方天气接口为例)

    天气接口地址:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl 1.打开项目文件目录路径文件夹,在当前文件夹打开cmd, ...

  5. arcengine 实现调用arctoolbox中的dissolove

    ESRI.ArcGIS.Geoprocessor.Geoprocessor geoprocessor = new Geoprocessor(); ESRI.ArcGIS.DataManagementT ...

  6. AE调用GP工具(创建缓冲区和相交为例)

    引用 Geoprocessing是ArcGIS提供的一个非常实用的工具,借由Geoprocessing工具可以方便的调用ArcToolBox中提供的各类工具,本文在ArcEngine9.2平台环境下总 ...

  7. AE调用GP工具的方法(转)

    第一,首先要明确自己需要调用arctoolbox里面的什么工具,实现什么样的功能. 第二,按照需求看看在arctoolbox工具中是怎么实现功能的,然后确定需要的数据源. 第三,编写command或t ...

  8. ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试

    原文:ArcGIS API for Silverlight 调用GP服务准备---GP模型建立.发布.测试 第一篇.GP降雨量等值线建模.发布及测试 在水利.气象等行业中,要在WebGIS中实现空间分 ...

  9. c# 调用ArcEngine的GP工具

    转自原文c# 调用ArcEngine的GP工具,AE调用GP工具 IAoInitialize m_AoInitialize = new AoInitializeClass(); esriLicense ...

随机推荐

  1. Java重点之小白解析--浅谈HashMap与HashTable

    这是一个面试经常遇到的知识点,无论什么公司这个知识点几乎是考小白必备,为什么呢?因为这玩意儿太特么常见了,常见到你写一百行代码,都能用到好几次,不问这个问哪个.so!本小白网罗天下HashMap与Ha ...

  2. jQuery Mobile 列表视图(带有自动检索)

    输入a: 输入b: jQuery Mobile 列表视图 jQuery Mobile 中的列表视图是标准的 HTML 列表:有序列表 (<ol>) 和无序列表 (<ul>). ...

  3. asp.net mvc 自定义身份验证

    1.定义身份实体对象 /// <summary> /// 网站用户实体对象 /// </summary> public class DDTPrincipal : IPrinci ...

  4. iphone中button按钮显示为圆形解决

    iphone中button按钮显示为圆形解决: 添加样式: -webkit-appearance:button; 如果需要为直角: border-radius:0 在源码中添加如:style=&quo ...

  5. android中回调函数机制完全解析

    1.在要调用的业务操作中,创建一个接口,在接口中创建方法,这个方法表示的是我们原先要在业务类中执行的操作 public interface BackUpSmsListener { /** * 设置总进 ...

  6. service XXX does not support chkconfig

    有时候为了方便管理,我们常常喜欢在Linux中将之安装为服务,然后就可以使用服务来管理. 但是当我们运行安装服务的命令时候,假设服务名为myservice #chkconfig --add myser ...

  7. android Handler机制详解

      简单运行图:    名词解析: Message(消息):定义了一个包含描述以及随意的数据对象可以被发送到Hanlder的消息,获得消息的最好方法是Message.obtain或者Handler.o ...

  8. ms sql server 在cmd中执行sqlcmd的时候报错

    cmd下直接输入sqlcmd会提示 错误: HResult 0x2,级别 16,状态 1命名管道提供程序: 无法打开与 SQL Server 的连接 [2].Sqlcmd: 错误: Microsoft ...

  9. eclipse中java项目的build path详解

    BuildPath中只支持加入jar文件,具体方法如下:在eclips里在工程名上右键->build path->contigure bud path->java build pat ...

  10. cassandra指定数据库路径

    参考 https://docs.datastax.com/en/cassandra/2.1/cassandra/configuration/configCassandra_yaml_r.html 我们 ...