资源简介
开发环境:C#+ArcEngine10.2+vs2010
《GIS程序设计教程》主要介绍了组件式GIS开发技术,重点是利用ArcGISEngine开发组件库,在.Net环境下利用C#语言进行GIS程序开发。全书由浅人深,从组件式GIS基本概念入手,介绍了ArcGISEngine10.0的特性;从地图显示浏览入手,介绍了GIS数据的组织与访问、制图渲染与输出、空间数据编辑、GIS分析及栅格图像处理,涵盖了GIS数据采集、编辑、处理、分析、输出等的基本功能;进一步地,分析了ArcGIS所提供的功能扩展模块,为GeoProcessing及3D分析等深入开发提供了案例。
《GIS程序设计教程》主要介绍了组件式GIS开发技术,重点是利用ArcGISEngine开发组件库,在.Net环境下利用C#语言进行GIS程序开发。全书由浅人深,从组件式GIS基本概念入手,介绍了ArcGISEngine10.0的特性;从地图显示浏览入手,介绍了GIS数据的组织与访问、制图渲染与输出、空间数据编辑、GIS分析及栅格图像处理,涵盖了GIS数据采集、编辑、处理、分析、输出等的基本功能;进一步地,分析了ArcGIS所提供的功能扩展模块,为GeoProcessing及3D分析等深入开发提供了案例。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ESRI.ArcGIS.Carto;
using System.Data;
using ESRI.ArcGIS.Geodatabase;
using System.IO;
using ESRI.ArcGIS.DataSourcesFile;
using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.Geometry;
namespace _5_8AOI
{
class DataOperator
{
//保存当前地图对象
public IMap m_map;
//用于传入当前地图对象构造函数
public DataOperator(IMap map)
{
m_map = map;
}
//获取图层
public ilayer GetlayerByName(string slayerName)
{
//判断图层名或地图对象是否为空,若为空,函数返回空
if (slayerName == ““ || m_map == null)
{
return null;
}
//对地图对象中的所有图层进行遍历,若某一图层的名称与指定图层名相同,则返回该图层
for (int i = 0; i < m_map.layerCount; i++)
{
if (m_map.get_layer(i).Name == slayerName)
{
return m_map.get_layer(i);
}
}
//若地图对象中的所有图层名均与指定图层名不匹配,函数返回空
return null;
}
public DataTable GetContinentsNames()
{
ilayer layer = GetlayerByName(“Continents“);
IFeaturelayer featurelayer = layer as IFeaturelayer; // 接口查询(Query Interface)
if (featurelayer == null)
{
return null;
}
IFeature feature;
IFeatureCursor featureCursor = featurelayer.Search(null false);
feature = featureCursor.NextFeature();
if (feature == null)
{
return null;
}
DataTable dataTable = new DataTable(); //用于函数返回
DataColumn dataColumn = new DataColumn();
dataColumn.ColumnName = “序号“;
dataColumn.DataType = System.Type.GetType(“System.Int32“);
dataTable.Columns.Add(dataColumn);
dataColumn = new DataColumn();
dataColumn.ColumnName = “名称“;
dataColumn.DataType = System.Type.GetType(“System.String“);
dataTable.Columns.Add(dataColumn);
DataRow dataRow;
while (feature != null)
{
dataRow = dataTable.NewRow();
dataRow[0] = feature.get_Value(0);
dataRow[1] = feature.get_Value(2);
dataTable.Rows.Add(dataRow);
feature = featureCursor.NextFeature();
}
return dataTable;
}
public IFeatureClass CreateShapefile(String sParentDirectory //上级路径
String sWorkspaceName //包含Shape文件的文件夹名
string sFileName) //Shape文件名
{
//判定路径和文件夹是否已存在存在则删除
if (Directory.Exists(sParentDirectory + sWorkspaceName))
{
Directory.Delete(sParentDirectory + sWorkspaceName true);
}
//创建工作空间工厂对象,再创建Shape文
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-28 15:47 5-8AOI\
目录 0 2018-06-15 21:39 5-8AOI\5-8AOI\
文件 9216 2018-05-28 15:48 5-8AOI\5-8AOI.suo
文件 11178 2018-06-15 14:33 5-8AOI\5-8AOI\5-8AOI.csproj
文件 452 2018-05-27 22:57 5-8AOI\5-8AOI\5-8AOI.csproj.user
文件 853 2018-05-31 14:41 5-8AOI\5-8AOI\5-8AOI.sln
文件 78336 2018-06-16 17:56 5-8AOI\5-8AOI\5-8AOI.suo
文件 162 2018-06-15 08:20 5-8AOI\5-8AOI\5-8AOI.v3.ncrunchsolution.user
文件 1652 2018-06-15 21:39 5-8AOI\5-8AOI\5-8AOI_TemporaryKey.pfx
文件 117 2018-06-02 18:12 5-8AOI\5-8AOI\app.config
目录 0 2018-05-28 15:39 5-8AOI\5-8AOI\bin\
目录 0 2018-06-16 17:20 5-8AOI\5-8AOI\bin\Debug\
文件 418816 2018-06-16 17:55 5-8AOI\5-8AOI\bin\Debug\5-8AOI.exe
文件 117 2018-06-02 18:12 5-8AOI\5-8AOI\bin\Debug\5-8AOI.exe.config
文件 108032 2018-06-16 17:55 5-8AOI\5-8AOI\bin\Debug\5-8AOI.pdb
文件 11608 2018-06-16 17:56 5-8AOI\5-8AOI\bin\Debug\5-8AOI.vshost.exe
文件 117 2018-06-02 18:12 5-8AOI\5-8AOI\bin\Debug\5-8AOI.vshost.exe.config
文件 490 2012-06-06 02:06 5-8AOI\5-8AOI\bin\Debug\5-8AOI.vshost.exe.manifest
目录 0 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\
文件 5291 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\5-8AOI.application
目录 0 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\Application Files\
目录 0 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\Application Files\5-8AOI_1_0_0_0\
文件 117 2018-06-02 18:12 5-8AOI\5-8AOI\bin\Debug\app.publish\Application Files\5-8AOI_1_0_0_0\5-8AOI.exe.config.deploy
文件 418816 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\Application Files\5-8AOI_1_0_0_0\5-8AOI.exe.deploy
文件 14431 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\Application Files\5-8AOI_1_0_0_0\5-8AOI.exe.manifest
文件 9171 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\publish.htm
文件 431512 2018-06-15 21:39 5-8AOI\5-8AOI\bin\Debug\app.publish\setup.exe
目录 0 2018-05-27 23:00 5-8AOI\5-8AOI\bin\Release\
文件 9567 2018-06-02 10:59 5-8AOI\5-8AOI\DataOperator.cs
目录 0 2018-06-15 12:13 5-8AOI\5-8AOI\Forms\
文件 991 2018-06-16 17:21 5-8AOI\5-8AOI\Forms\createRaster.cs
............此处省略48个文件信息
- 上一篇:C#俄罗斯方块代码.zip
- 下一篇:asp.net上机实验mypetshop源码
相关资源
- 空间拓扑查询(ArcEngine)
- C# 反射学习
- C# asp.net验证码
- C#托盘图标 带右键菜单
- C#Twincat3读写程序
- C#编写的KTV系统(附access数据库)
- C# 桌面时钟(穿透)
- C#图书管理系统(源代码+数据库+系统
- C#通讯调试工具源码
- 纯C#的DICOM读取和通讯
- C# 多线程任务池
- C#生成条形码
- C# 利用ListView空间导航数据库信息
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
评论
共有 条评论