using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ESRI.ArcGIS.Geoprocessor;
using ESRI.ArcGIS.AnalysisTools;
namespace EngineWindowsApplication31 //执行缓冲
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//构造Geoprocessor
Geoprocessor gp = new Geoprocessor();
//设置参数
ESRI.ArcGIS.AnalysisTools.Buffer buffer = new ESRI.ArcGIS.AnalysisTools.Buffer();
buffer.in_features = @"F:\foshan\map\ccc.shp";
buffer.out_feature_class = @"F:\foshan";
buffer.buffer_distance_or_field = "1";
buffer.line_side = "OUTSIDE_ONLY";
//执行buffeer工具
RunTool(gp, buffer);
}
private void RunTool(Geoprocessor geoprocessor, IGPProcess process)
{
// Set the overwrite output option to true
geoprocessor.OverwriteOutput = true;
try
{
geoprocessor.Execute(process, null);
ReturnMessages(geoprocessor);
}
catch (Exception err)
{
Console.WriteLine(err.Message);
ReturnMessages(geoprocessor);
}
}
// Function for returning the tool messages.
private void ReturnMessages(Geoprocessor gp)
{
string ms = "";
if (gp.MessageCount > 0)
{
for (int Count = 0; Count <= gp.MessageCount - 1; Count++)
{
ms += gp.GetMessage(Count);
}
}
}
}
}
c#利用Arcgis Engine调用Arcgis GP做缓冲分析
最新推荐文章于 2023-09-16 00:48:22 发布