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. 更新CocoaPods

    终端输入 : sudo gem install -n /usr/local/bin cocoapods –pre 更新了CocoaPods后,在原来的工程中执行了pod install命令后,报这样的 ...

  2. PD中将Comment 从Name复制值

    PD中将Comment 从Name复制值, 将以下语句考到,pd 工具栏下的执行脚本中执行下就OK了 Option Explicit ValidationMode = True Interactive ...

  3. python splinter

    from splinter.browser import Browser with Browser() as b: for url,name in web: b.visit(url) b.fill(' ...

  4. Python 第一个Python项目Hello,Python 学习之路(二)

    print("Hello,Python")

  5. [php-src]窥探Php内核中的数组与面向对象

    内容均以php5.6.14为例. 扩展中定义一个类有以下四步: #1. 声明一个存储类信息的指针. zend_class_entry *errs_ce; #2. 定义方法的参数信息,类的方法实现. Z ...

  6. Python 变量范围

    1.本地变量,全局变量 Python 中有2种变量作用范围本地变量,全局变量. 变量搜索路径是:本地变量->全局变量 它们简而言之就是本地变量的值只在本地作用范围有效.而全局变量的作用范围是全局 ...

  7. 华硕U303L通过U盘装系统

    开机,按esc,进入bios,选择security,将secure boot control设置为disable.   在boot下,将launch csm 改为enable,按F10保存退出,重启. ...

  8. 【Java】:googleSearch

    google custom search是一个基于google的搜索引擎api,可以请求谷歌的搜索数据 pala pala  pala  ... 实现: 1.注册谷歌账号 2.创建google项目 1 ...

  9. 【Mail】telnet收发邮件过程

    telnet发送邮件 关于电子邮件的基础知识请参照:[Mail]邮件的基础知识和原理 smtp协议是一个简单的邮件传输协议,利用它我们可以将邮件发送给别人,这里将通过telnet这个程序利用smtp协 ...

  10. php常用的几个模块

    上传下载.操作excel.编码.内存管理.浮点运算.系统时间.seo.web安全.网络 0.环境搭建 1.上传下载 借助jquery的uploaderfily插件.表单内嵌iframe提交 2.exc ...