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. JS-数组冒泡排序

    数组冒泡就是每次从数组里取出两个数,然后比较大小,然后在排序. 正序排列 var arr = [8,2,5,12,14,19,1,6];      for(var i = 0;i < arr.l ...

  2. swoole 使用 1

    在很长的一段时间里,我不太看好swoole,发现它的文档太少,社区也不够活跃等,但是最近在学习 Hprose时,发现swoole在rpc方面做得更加完善,于是决定看看. 在简单的使用swoole扩展后 ...

  3. jquery 清空 iframe 的内容,,iframe自适应高度

    $(iframe).contents().find("body").html(""); iframe自适应高度 $("#AllDescription& ...

  4. lvs + keepalived 介绍及安装

    LVS介绍 lvs 核心ipvs      Ipvs(IP Virtual Server)是整个负载均衡的基础,如果没有这个基础,故障隔离与失败切换就毫无意义了.Ipvs 具体实现是由ipvsadm ...

  5. django搭建论坛之一环境配置

    环境情况: Description:    Ubuntu 15.04   Python版本:   Python 2.7.9 django版本: 1.8.4 安装django: pip install ...

  6. requirejs+cdn

    当requirejs加上cdn.cdn固然可以在requirejs里面配置.但是在a.html里面却不能通过给自己引用的requirejs文件添加版本戳. 最重要的是requirejs不能引进css当 ...

  7. flask-admin众博客概述

    最近用flask admin(https://flask-admin.readthedocs.org/en/latest/)构建自动化发布平台,发现flask admin蛮强大的,基本上不需要自己写太 ...

  8. 【转载】SQL Server 2008 r2 中 SQL语句中单引号转义

    sql server有两个转义符. 默认情况下, 单引号'是字符串的边界符, 如果在字符串中包含单引号', 则必须使用两个单引号', 第1个单引号'就是转义符.

  9. 188. Best Time to Buy and Sell Stock IV leetcode解题笔记

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  10. 3515 如何调试AT指令、查看拨号模块的打印

    冯sir给了一个在设备运行的程序serial,运行起来后可以敲指令输入AT指令,具体步骤如下: 1.将serial文件从U盘拷贝到设备里,U盘在设备系统下的目录是/stm/udisk/0/,但是注意设 ...