随笔-108  评论-111  文章-2  trackbacks-0

AO 直接调用GeoProcessing 工具

今天在http://www.gisbing.com/index/showtopic-482.aspx网站上看到这样一段代码,蛮好的:

 

Geoprocessing是ArcGIS的一个基础组成部分。无论你是一个新手抑或老资格的专家,geoprocessing都是你使用ArcGIS完成每天工作的一部分。它提供了数据分析、数据管理和数据转换等对于所用GIS用户都必须的工具,当然也包括ArcObjects开发者。 GIS程序通常需要操作和分析地理数据,如将数据集从一种投影转换为另一种投影,为表添加字段,或者为要素添加缓冲区。ArcGIS9包括了上百个geoprocessing工具来执行这些任务。本文将介绍ArcGIS Desktop和ArcGIS Engine用户如何中ArcObjects应用程序中使用这些geoprocessing工具。 GeoprocessorGeoprocessor是简化调用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);
}

作者:LiFuyun
出处:http://lifuyun.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2010-12-16 10:50 云中深海 阅读(351) 评论(0) 编辑 收藏
LiFuyun.Net

本Blog上的任何言论仅代表个人观点或收藏精彩文章等,与作者所在的公司或个人没有任何关系。
本Blog的内容按原样提供,作者不提供任何形式的担保。
欢迎大家一起探讨,共同进步!

 

个人CSDN-BLOG
深海软件信息技术服务网
飘逸软件技术信息服务网
技术方向:
    C#  Asp.NET ArcGIS JavaScript SilverLight PHP Java等
数据库:
    SQL Server Oracle MySQL
目前居住于:
    中国上海

联系方式:
LiFuyun.Net-CloudyDeepSea


点击这里通过MSN给我发消息

点击这里通过QQ给我发消息

参与项目:
    上海市各区县防汛网、WebGIS系统开发、上海市排水管理处行业信息管理系统、青浦水情地理信息系统、上海市污水处理厂在线环保监测系统等等。


昵称:云中深海
园龄:2年11个月
粉丝:36
关注:20
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

搜索

 

常用链接

我的标签

随笔分类

随笔档案

文章分类

文章档案

相册

博客友人

网店链接

最新评论

阅读排行榜

评论排行榜

推荐排行榜