AO 直接调用GeoProcessing 工具

Geoprocessing是ArcGIS的一个基础组成部分。无论你是一个新手抑或老资格的专家,geoprocessing都是你使用ArcGIS完成每天工作的一部分。它提供了数据分析、数据管理和数据转换等对于所用GIS用户都必须的工具,当然也包括ArcObjects开发者。

 GIS程序通常需要操作和分析地理数据,如将数据集从一种投影转换为另一种投影,为表添加字段,或者为要素添加缓冲区。ArcGIS9包括了上百个geoprocessing工具来执行这些任务。本文将介绍ArcGIS Desktop和ArcGIS Engine用户如何中ArcObjects应用程序中使用这些geoprocessing工具。

 

Geoprocessor

Geoprocessor是简化调用geoprocessing工具任务的主要对象。这个对象是执行ArcGIS中任何geoprocessing工具的唯一访问点,它是一个粗粒度对象,包含了许多属性和方法,使得下面的操作变为可能:运行工具,设置全局环境参数;检查结果消息,执行批处理,访问数据属性。

Toolboxes为geoprocessor定义了一套工具,Toolboxes可以添加到geoprocessor中,也可以从中删除。(这句话的意思是,所有的geoprocessing都保存在Toolboxes中,Geoprocessor可以通过调用这些Toolbox的方式实现执行其中地理工具的目的;当然,它还可以直接调用工具类的方式执行)

 geoprocessor对象可以使用任何语言,包括VB,.NET和Java,来进行访问。本文所有的代码都将使用C#。帮助也为Java开发者提供了“Additional Resources for Programming with Geoprocessing Tools”资源。

ArcGIS9.2包含了一个新的.NET程序集ESRI.ArcGIS.Geoprocessor。它包含了一个被称为Geoprocessor的托管类。每一个ESRI提供的toolbox也都表现为一个托管程序集。在每一个toolbox程序集中,都拥有许多类来表示每个geoprocessing工具。工具类的都是使用Geoprocessor来调用和运行的。

(这句话的意思是我们还有第二种调用地理工具的方法,即直接访问其类).下面的例子展示了如何用AO来调用Geoprocessing.

using ESRI.ArcGIS.Geoprocessor;
using ESRI.ArcGIS.AnalysisTools;
public void SampleBufferTool()
{
// Initialize the geoprocessor. 
Geoprocessor GP = new Geoprocessor();
ESRI.ArcGIS.AnalysisTools.Buffer bufferTool = new
ESRI.ArcGIS.AnalysisTools.Buffer();
bufferTool.in_features = @"D:\St_Johns\data.mdb\roads_Buffer";
bufferTool.out_feature_class = @"D:\St_Johns\data.mdb\roads";
bufferTool.buffer_distance_or_field = "distance";
GP.Execute(bufferTool, null);
}

转载于:https://www.cnblogs.com/tuncaysanli/archive/2009/04/02/1428519.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/264372.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux环境变量PSI指什么,PSI 文件扩展名: 它是什么以及如何打开它?

了解 PSI 问题常见的 PSI 打开问题缺少 PrimalScript双击你的 PSI 文件会提示消息 “%%os%% 无法打开 PSI 文件”。 通常,%%os%% 中会出现这种情况,因为 PrimalScript 未安装在你的电脑上。 由于您的操作系统不知道如何处理此文件,因此无法通…

linux 修改文件时间

1、ls -l *.sh 2、touch -d "10/13/2013" *.sh 【我想把所以的.sh文件修改到三个月前(2013年10月13)的时间。】3、ls -l *.sh 参考文章 http://blog.itpub.net/29283412/viewspace-1070106/ 另外也可以单独修改时间或者月份,如下以…

datetime模块日期转换和列表sorted排序

import datetime dt 2019010103 # 日期 2019年1月1日3时 dts (datetime.datetime.strptime(dt, %Y%m%d%H) datetime.timedelta(days-1)).strftime(%Y%m%d%H) # 将dt向前或向后调整(day表示天,hours表示表示小时,负数往前正数往后&#xf…

差距

现在看明白了自己的距离,该从何处下手? 时间是怎么争取出来的?转载于:https://www.cnblogs.com/rosion/archive/2009/04/11/1433450.html

linux 命令tf,Linux文件管理命令

本篇涉及命令:cat,tac,more,less,head,tail,file,stat,touch,which,whatis,whereis,ls,mkdir,rmdir,tree,cp,mv,rm文本文件查看类命令cat 查看文件内容(concatenate)cat命令用于查看一个或多个文本文件内容,可以将两个或两个以上的文件连接起来并显示&am…

Python实现——二元线性回归(最小二乘法)

2019/3/30二元线性回归——矩阵公式法_又名:对于python科学库的糟心尝试_ 二元线性回归严格意义上其实不过是换汤不换药,我对公式进行推导,其实也就是跟以前一样的求偏导并使之为零,并且最终公式的严格推导我大概也只能说是将将理…

CSharp设计模式读书笔记(18):中介者模式(学习难度:★★★☆☆,使用频率:★★☆☆☆)...

中介者模式(Mediator Pattern):用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互,中介者模式又称为调停…

AT命令解释

一、 AT命令解释&#xff1a;1、常用操作1.1 AT命令解释&#xff1a;检测Module与串口是否连通&#xff0c;能否接收AT命令&#xff1b;命令格式&#xff1a;AT<CR>命令返回&#xff1a;OK (与串口通信正常)&#xff08;无返回&#xff0c;与串口通信未连通&#xff09;测…

linux四种集群是什么,lvs四种集群特点及使用场景

一、 前言当一组服务器在高速的局域网或广域网中相互连接&#xff0c;其前端部署了一个负责负载调度的调度器(Director)的服务器系统。调度器能将网络请求无缝调度到真实服务器上(Real server)&#xff0c;客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一…

c#数据库訪问返回值类型为SqlDataReader时使用using时注意的问题

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主同意不得转载。https://blog.csdn.net/u010512579/article/details/24011761 在封装通用 SQLSERVER 数据可訪问方法时&#xff0c;假设返回值类型为 SqlDataReader ,那么在创建连接字符串的时候。我们不能写成例如以…

BroadcastReceiver应用详解(转)

转自&#xff1a; http://blog.csdn.net/liuhe688/article/details/6955668 問渠那得清如許&#xff1f;為有源頭活水來。南宋.朱熹《觀書有感》 据说程序员是最爱学习的群体&#xff0c;IT男都知道&#xff0c;这个行业日新月异&#xff0c;必须不断地学习新知识&#xff0c;不…

深入浅出JSON

深入浅出JSON JSON定义 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式&#xff0c;易于阅读和编写&#xff0c;同时也易于机器解析和生成。它基于ECMA262语言规范&#xff08;1999-12第三版&#xff09;中JavaScript编程语言的一个子集。 JSON采用与编程语言…

就linux学习的一点感受,学习linux的体会

学linux的驱动设计一&#xff1a;首先先装个虚拟机吧&#xff0c;我觉得这个比较好&#xff0c;有些人建议直接装在硬盘上(我想他们是觉得有点环境压力吧)&#xff0c;可我觉得对于没有linux基础的还是先装虚拟机比较好。二&#xff1a;记住一些常用的命令&#xff0c;这个是学…

自动绑定数据源

自动绑定数据源实现数据控件与原始数据的绑定是实现数据展示与编辑的基本前提。在常规的设计模式下实现数据绑定有两种方式&#xff1a;1&#xff09;第一种方式&#xff1a;在窗体上引用数据对象→逐个拖放控件→分别设置控件与字段的绑定关系。这无疑是个不厌其烦的重复过程&…

Java工具类——通过配置XML验证Map

Java工具类——通过配置XML验证Map 背景 在JavaWeb项目中&#xff0c;接收前端过来的参数时通常是使用我们的实体类进行接收的。但是呢&#xff0c;我们不能去决定已经搭建好的框架是怎么样的&#xff0c;在我接触的框架中有一种就是通过Map来接收前端过来的所有参数&#xff0…

c语言用指针两个字母交换,c语言指针基础之用指针交换两个数(代码实例)

用指针交换两个数&#xff1a;void swap(int *p,int *q) {int temp;temp *p;*p *q;*q temp;}int main(){int a 3, *p,c 5, *q;p &a; //把变量a的地址赋值给指针p&#xff0c;即p指向aq &c;swap(p,q);printf("a %d,c %d\n", a, c);return 0;}注意&am…

如何在 Windows Server 2003、Windows 2000 和 Windows XP 中备份恢复代理的加密文件系统 (EFS) 私钥...

本 文介绍了如何在运行 Microsoft Windows Server 2003、Microsoft Windows 2000 或 Microsoft Windows XP 的计算机上备份恢复代理加密文件系统 (EFS) 私钥。当位于本地计算机上的 EFS 私钥副本丢失时&#xff0c;请使用恢复代理的私钥恢复数据。本文包含有关如何使用证书导出…

你可能从未听过的 Linux 发行版

Hanthana Linux 官方主页&#xff1a;http://www.hanthana.org Hanthana Linux 基于 Fedora&#xff0c;主要面向 IT 教育&#xff0c;默认包含额外的编/解码器及多媒体播放器。它提供可安装到硬盘的 LiveDVD&#xff0c;支持 i686 和 x86_64 架构。 ROSA Linux 官方主页&#…

从壹开始 [vueAdmin后台] 之三 || 动态路由配置 项目快速开发

回顾 今天VS 2019正式发布&#xff0c;实验一波&#xff0c;你安装了么&#xff1f;Blog.Core 预计今天会升级到 Core 3.0 版本。 哈喽大家周三好&#xff01;本来今天呢要写 Id4 了&#xff0c;但是写到了一半&#xff0c;突然有人问到了关于 Blog.Admin 管理后台的一些问题&a…

c语言支持默认参数吗,嵌入式C语言可以带“默认参数”的函数吗

描述(文章来源&#xff1a;嵌入式时代)使用C开发过程序时&#xff0c;定义函数可以指定默认参数&#xff0c;例如 void fun(int x, int y3); 在调用 fun() 时第二个参数可以不传递&#xff0c;此时 fun() 函数默认第二个参数等于 3&#xff0c;例如 f(1) 就相当于 f(1,3)。这是…