怎样快速学习ArcEngine开发?

合集下载

地理信息系统开发ArcEngine方法

地理信息系统开发ArcEngine方法

2.1 什么是对象模型图
可创建类(CoClass)

可创建类是唯一可以用New关键字来创建对象 的。也就是说,可创建类可以直接被创建或者实 例化。例如在ArcMap中,可以创建新的Maps, FeatureLayers,FillSymbols或GraphicElements等。 在对象模型图中可创建类是用3D有阴影的立方体 表示的。
第2章 ArcGIS Engine基础
内容提要
什么是对象模型图 ArcEngine 类库结构 ArcEngine 的常用控件 ArcEngine 的开发资源 利用ArcEngine 开发一个简单的GIS工程
2.1 什么是对象模型图(Object Model Diagram,OMD)
虫洞 ArcEngine包含的AO类库是非 常多的,而且所有的这些类基 本上和其他的类有联系。为了 更清晰的认识这些类间的关系, 对象模型图在介绍一个类的同 时增加了一些虫洞。 虫洞就表示该类所关联的类。 如右图所示,在Element上有 一个指向它的虫洞。这表示类 Element和类Geometry有关联
1.2 ArcEngine的主要特点
对所有矢量和栅格数据源的读权限 对Shapefile和pGDB的写权限 读/写MXD文件 数据的显示和地图浏览 绘制来自于航空照片或卫星影像的图像 跟踪和绘制要素(如点、线、圆及多边形) 绘制非GIS要素,如描述性文本、图形元素 地图数据的坐标转换 搜索地图上的要素或通过单击来识别地图上的要素 多种要素选择方式,如点选、框选、SQL属性选择 显示要素属性字段的文本标注 TOC图层管理,如显示具有多个地图图层的地图
内容提要
ArcEngine 介绍 ArcEngine的主要特点 ArcEngine与其他组件的区别与联系 ArcEngine的安装

ArcGIS Engine10.0轻松入门级教程(1)——必备基础知识

ArcGIS Engine10.0轻松入门级教程(1)——必备基础知识

ArcGIS Engine10.0轻松入门级教程(1)——必备基础知识分类:ArcEngine开发2012-06-13 22:56 2173人阅读评论(3) 收藏举报目录(?)[-]1. ArcGIS、ArcObjects和ArcGIS Engine简介1. ArcGIS简介2. ArcObject简介3. ArcSIS Engine简介1. ArcGIS Engine Software Developer Kit2. ArcGIS Engine Runtime3. ArcGIS Engine的功能4. net平台5. 接口编程思想6. QI六月的某一天,骄阳似火,夜幕已悄悄降临,坐在电脑前回想自己的大学四年时光,或痛心疾首,或微微憨笑,感概万千,在GIS专业学习了4年,有很多收获,也有很多遗憾,幸而考上了研究生可以继续深造。

于是乎心里的雄心一下被激发了,总结自己的所学知识,打算重新开始,把ArcGIS Engine写一本入门级的教程,为初学者少做弯路,也为自己总结下知识,更为打发着无聊时光。

以上为序,语无伦次自娱自乐!PS:本教程虽为入门及教程,但也要求你有入门级的知识,如果你是哲学专业的,那我也无力回天啊!还有本教程素材全部来源于互联网,版权未知,要我说感谢的话:感谢CCTV,感谢MTV……就此打住。

1 ArcGIS、ArcObjects和ArcGIS Engine简介1.1ArcGIS简介ArcGIS提供了一个可伸缩的框架,可以为独立用户或者多用户,既可以在桌面端也可以在服务器端提供GIS。

ArcGIS 9是用来构建一个完整GIS应用的GIS软件产品集成。

它是基于共享的GIS软件组件——ArcObjects。

ArcGIS 9由以下四部分组成:1)ArcGIS Desktop——高级GIS应用的集成2)ArcGIS Engine——根据应用程序接口来构建基本应用的嵌入式GIS组件库3)ArcGIS Server——在企业级或者网络框架下构建服务器端GIS应用的平台,用来构建Web服务和Web应用4)ArcIMS——通过公开的因特网协议来发布地图、数据和元数据的GIS Web服务器每一个GIS框架同样包含ArcSDE网关,这是在关系数据库(RDBMS)上组织地理数据的接口。

ArcGIS Engine基础开发教程(3)

ArcGIS Engine基础开发教程(3)

ArcGIS Engine基础开发教程(3)——学习地图和地图布局Engine, ArcGIS, 教程, 地图, 基础本章是ArcGIS Engine基础开发教程的第三章,主要给大家大致讲解了,地图和地图布局的相关对象。

这些对象非常重要,如果这些基本对象都不熟悉就开始搞ArcGIS Engine开发是不科学的也走不远的。

3地图和地图布局3.1地图3.1.1Map对象Map对象是ArcGIS Engine的主要对象,本章将给大家介绍地图组成结构,如何创建地图,如何对组成地图的对象进行操作,在介绍这些内容时尽量结合ArcMap学习效果会更好。

在Map对象上能显示的图形有两类一类是地理数据,一类是元素。

地理数据包括矢量类型的要素数据,栅格数据,Tin等表面数据等,这些数据都保存在Geodatabase或数据文件如shapefile中,它们是用于GIS分析制图的源数据;图1而元素是另一种可以显示在Map上的对象,它分为两部分一类是图形元素,一类是框架元素,图形元素可以显示出来,而框架元素充当了“容器”的角色。

在ArcMap中可以使用“Draw”工具在Map上直接绘制一个矩形,圆形,文本等对象,在布局视图上也可以给地图添加指北针,图例,比例尺等图形对象,这些都是图形元素。

图2在ArcMap中Map对象是由MXDocument对象的MapFrame对象管理,MapFrame是一个框架元素。

Map对象有双重身份,一方面是数据的管理容器,可以加载地理数据和图形元素,扮演了数据管理器的角色,另一方面它又可以让用户看到这些数据即扮演了数据显示器的角色,当加载数据到Map对象的时候,Map对象是数据的管理者;当改变视图范围,刷新地图的时候它是数据的显示者。

Map对象主要实现的接口由IMap,IGraphicContainer,IActiveView,IMapBookmark等接口。

IMap接口主要用于管理Map对象中的Layer对象,要素选择集对象,MapSourround对象,空间参考等对象。

ArcGISEngine培训教程

ArcGISEngine培训教程
—MapControl, PageLayout, Toolbar, TOC, ArcReader 对所有矢量和栅格数据源的读权限 对Shapefile和pGDB的写权限 读/写 MXD文件
目录
1 ArcGIS体系结构 2 ArcGIS Engine是什么 3 ArcGIS Engine的主要功能 4 ArcGIS Engine类库 5 ArcGIS Engine控件 6 接口的概念 7 对象模型图的阅读 8 什么是地理数据库 9 ArcGIS Engine开发环境与流程 10 ArcGIS Engine许可与部署 11 开发综合实例
和求异等。(几何运算) 处理要素形状或者旋转地图 创建和更新地理要素及其属性 地图制图输出 3D显示、空间分析 ……
目录
1 ArcGIS体系结构 2 ArcGIS Engine是什么 3 ArcGIS Engine的主要功能 4 ArcGIS Engine类库 5 ArcGIS Engine控件 6 接口的概念 7 对象模型图的阅读 8 什么是地理数据库 9 ArcGIS Engine开发环境与流程 10 ArcGIS Engine许可与部署 11 开发综合实例
空间分析扩展
创建、查询和分析基于像元的栅格数据 坡度计算 坡向计算 用数字高程模型生成等高线 ……
3D分析扩展
实现数据的三维可视化 提供SceneControl和GlobeControl 创建表面和分析表面的多层3D数据 把3D功能嵌入到应用系统中。
小结:ArcGIS Engine的功能
ArcGIS Engine扩展模块
GeoDatabase Updata 3D 分析 空间分析
GeoDatabase Updata扩展

ArcGIS_Engine基础开发教程(2)

ArcGIS_Engine基础开发教程(2)

ArcGIS Engine基础开发教程(0)——目录1创建第一个ArcGIS Engine桌面应用程序 (6)2几何对象与空间参考 (15)3地图和地图布局 (44)4图层符号化 (64)5地图查询 (91)6.空间分析 (110)7地图输出... 121、下周讲推出第三章和第四章内容。

我只是给大家介绍了入门的知识以及经验,最重要的还是自己敲代码感悟。

很多人是不熟悉ArcGIS Desktop就开始从网上Down代码修改代码开始了自己的开发之旅,包括我,我大学时代是MapInfo的粉丝,一直没学过ArcGIS。

这是非常不科学的,因为ArcGIS Desktop就是从AO开发起来的,你只有掌握了ArcGIS Desktop的使用,才能很容易理解AO接口提供的功能。

实际上ArcGIS Engine二次开发说白了就是在ArcGIS Desktop所提供的功能和业务相结合进行的创新性开发。

所以熟悉ArcGIS Desktop以及ArcGIS数据模型对学习ArcGIS Engine二次开发非常重要!祝大家学习愉快!ArcGIS Engine基础开发教程(1)——创建第一个ArcGIS Engine桌面应用程序ESRI BBS GIS大讲堂首发,转载请注明出处1创建第一个ArcGIS Engine桌面应用程序ArcGIS Engine9.3提供了丰富的GIS组件方便用户快速的定制开发一个GIS应用程序,无需写代码即可实现GIS数据加载,地图操作等功能甚至可以实现高级编辑以及空间分析功能。

接下来使用ArcGIS Engine9.3提供了MapControl Application模块来创建第一个ArcGIS Engine桌面应用程序,并为桌面应用应用程序提供编辑功能。

1.1目标1.创建第一个ArcGIS Engine桌面应用程序2.为应用程序添加编辑功能。

1.2准备工作1.IDE:Visual Studio 2005/20082.ArcGIS Engine Developer kit 9.33.制作ArcGIS实验数据地图文档MXD1.3设计流程图1.4制作地图文档在ArcMap中加载数据后,点击保存生成一个*.mxd地图文档,如图1所示:图11.5创建第一个ArcGIS Engine桌面应用程序在Visual Studio2008中新创建项à选择àArcGISàEngineàMapControl Application,点击确定,如图2所示:图2可以看到在Visual Studio中看到在新创建的项目中自动加载了ToolBarControl、TocControl、LicenseControl、MapControl四个ArcGIS Engine控件以及一个.NET ToolStripMenuItem菜单控件,如图3所示:图31.6加载MXD地图文档数据单击F5键运行程序,然后单击打开MXD地图文档按钮打开MXD地图文档,如图4所示:图4可以看到应用程序把MXD地图文档加载到MapControl地图上,可以使用ToolbarControl 提供的常用GIS功能如:放大,缩小,信息查询等功能。

ArcEngine二次开发入门

ArcEngine二次开发入门

pRender.FieldCount = 1; pRender.set_Field(0, field); pRender.DefaultSymbol = symd as ISymbol; eDefaultSymbol = true;
for (int i = 0; i < values.Length; i++) { ISimpleFillSymbol symx = new SimpleFillSymbolClass(); symx.Style = esriSimpleFillStyle.esriSFSSolid; symx.Outline.Width = 0.4; symx.Color = colors[i]; pRender.AddValue(values[i], field, symx as ISymbol); pRender.set_Label(values[i], values[i]);
}
地图缩放的控制
修改m_mapControl.Extent可达到缩放效果。 缩放到任意范围:构建一个Envelope 缩放到图层:ILayer. AreaOfInterest 缩放到某地物:IGeometry.Envelope 缩放到选择集:合并选择集中所有 Geometry的Envelope
SimpleLineSymbol
public ISimpleLineSymbol CreateSimpleLineSymbol(IRgbColor rgbColor, double inWidth, esriSimpleLineStyle inStyle) { if(rgbColor == null) { return null; } ISimpleLineSymbol simpleLineSymbol = new SimpleLineSymbolClass(); simpleLineSymbol.Style = inStyle; simpleLineSymbol.Color = rgbColor; simpleLineSymbol.Width = inWidth; } return simpleLineSymbol;

优-ArcEngine基础开发教程C#二次开发ArcGis

优-ArcEngine基础开发教程C#二次开发ArcGis
本文由 fxlcoco 编写 ESRI BBS GIS 大讲堂首发
04/04/2011
第 5 页,共 80 页
山东农业大学资源与环境学院
世界有我精彩-【侯志伟】整理
//添加第一个点,不需要设置点的顺序,参数设置为 Type.Missing pMultipoint.AddPoint(pPoint1, ref o, ref o); //添加第二个点,不需要设置点的顺序,参数设置为 Type.Missing pMultipoint.AddPoint(pPoint2, ref o, ref o); ……//添加其他点 2.4.2Segment 几何对象
地理信息系统08-3
2.4.3Path 和 Ring 几何对象 2.4.3.1Path 几何对象 Path 是连续的 Segment 的集合,除了路径的第一个 Segment 和最后一个 Segment 外其余的 Segment 的起始点都 是 前 一 个 Segment 的 终 止 点 , 即 Path 对 象 的 中 的 Segment 不 能 出 现 分 离 , Path 可 以 是 任 意 数 的 Line,CircularArc,EllipticArc 和 BezierCurve 的组合。
一个 Polyline 对象必须满足以下准则: 1.组成 Polyline 对象的所有 Path 对象必须是有效的。 2.组成 Polyline 对象的所有 Path 对象不能重合,相交或自相交。 3.组成 Polyline 对象的多个 Path 对象可以连接与某一点,也可以分离。 4.Path 对象的长度不能为0. IPolyline 是 Polyline 类的主要接口,IPolyline 的 Reshape 方法可以使用一个 Path 对象为一个 Polyline 对象整形, IPolyline 的 SimplifyNetwork 方法用于简化网络。 Polyline 对象可以使用 IGeometryCollection 接口添加 Path 对象的方法来创建,使用该接口需注意以下情况: 1.每一个 Path 对象必须是有效的,或使用 IPath::Simplify 方法后有效。 2.由于 Polyline 是 Path 对象的有序集合,所以添加 Path 对象时必须注意顺序和方向。 3.为了保证 Polyline 是有效的,可以创建完 Polyline 对象后使用 ITopologicalOperator 接口的 Simplify 方法。 以下代码片段为使用 IGeometryCollection 接口创建一个 Polyline 对象:

ArcEngine开发入门-3

ArcEngine开发入门-3

}
ISpatialFilter
继承了IQueryFilter,扩展Spatial部分 Geometry GeometryField:通常来自 IFeatureClass.ShapeFieldName SpatialRel:空间关系 SpatialRelDescription:用9交模型描述方式 给定空间关系,可以很精细

IFeatureSelection
FeatureLayer实现了IFeatureSelection接口 SelectFeatures:选择 SelectionSet:设置或获取选择集 Clear:清除选择集 显示选择集: m_mapControl.ActiveView.PartialRefresh( esriViewDrawPhase.esriViewGeoSelection, null, null);

IQueryFilter
AddField:添加字段到SubFields。与直接 给定SubFields效果一样。 SubFields:查询时需返回的字段。默认为*, 多个字段用“,”分隔。编辑时必须为“*”。 WhereClause:类似于SQL Where的语法, 字符串值必须用单引号。不指定代表返回 所有。
}
– – – – DeleteFeature InsertFeature UpdateFeature Flush
public void DisplayInternationalAirports(IFeatureClass featureClass) { IQueryFilter queryFilter = new QueryFilterClass(); queryFilter.WhereClause = "TYPE = 'International'"; queryFilter.SubFields = "NAME"; int fieldPosition = featureClass.FindField("NAME"); IFeatureCursor featureCursor = featureClass.Search(queryFilter, true); IFeature feature = null; while ((feature = featureCursor.NextFeature()) != null) { Console.WriteLine(feature.get_Value(fieldPosition)); }
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

怎样快速学习ArcGIS Engine的开发,《ArcGIS Engine地理信息系统开发教程》代序
桌面GIS、WebGIS和移动GIS是GIS软件开发的三种模式。

桌面GIS的功能更为丰富,软件设计更加灵活,加之历史溯源,GIS软件开发的初学者往往都是从桌面GIS的开发入门,这也符合软件开发的一般学习规律。

具体到ArcGIS的开发,就需要学习者从ArcGIS Engine开始入手。

由于ArcGIS的桌面、服务器和移动端是采用一套ArcObjects构建的,因此在掌握了ArcGIS Engine的开发思路和开发接口以后,也就会很容易的过渡到WebGIS和移动GIS的开发上来。

同时,由于基于ArcGIS Engine进行二次开发已经成为业界桌面GIS开发的事实上的标准,因此GIS行业的开发者大都是从学习ArcGIS Engine开始的。

地理信息科学专业学生的专业技能往往被简单描述为:掌握GIS的基础理论(可以理解为本科所学的理论课程),掌握一门GIS软件(往往特指ArcGIS),学会使用一种语言进行GIS 软件开发(基于ArcGIS Engine使用C#语言开发是最常见的方式)。

以作者多年的教学经验来看,绝大多数学生经过四年的学习能够基本掌握GIS的理论知识,大部分学生能够熟悉ArcGIS 软件的操作,但是只有少数学生能够掌握ArcGIS软件的开发。

这是因为,一个专业的所有理论课程是一个前后衔接、互相支持的体系,当所有课程学完这个体系也就比较容易的建立起来。

ArcGIS软件尽管体系庞大、学习有一定难度,但它是专业理论知识的体现和印证,经过多次练习也是能够掌握其操作过程的。

软件开发不仅需要熟悉编程语言,熟悉ArcGIS Engine繁芜纷杂的接口,还要熟悉软件架构与软件设计的有关知识,而且软件开发具有一定的灵活性和创造性,使得学习难度加大,导致学生普遍存在畏难心理。

由此,尽管存在强烈的学习愿望,实践上却往往停留在语言的语法学习和ArcGIS Engine的接口学习层面上,一遍遍翻阅书本却不去写下第一行代码,导致眼高手低、心有余而力不足。

当然缺少一本合适的参考书也是一个重要的因素。

如果能站在学生的角度,面向工程的实际应用,充分兼顾不同层次读者的知识结构和知识水平设计一本教材。

既具有权威性、全面性和实战性,又由易及难、由浅入深、循循善诱、内容丰富;既使基础比较薄弱而又有强烈的ArcGIS Engine开发欲望的读者容易入门,又使具有一定基础的读者有提高的余地。

那么,对于ArcGIS Engine的开发者来讲将是一个福音。

本书立意也在此。

全书分为四篇十二章。

第一篇是基础篇,包括一到二章,在总体上介绍了ArcGIS Engine
编程的基本概念和开发桌面GIS的几种不同的方式。

第二篇是基础操作篇,包括三到六章,主要讲解地图的基本操作、空间查询与统计、地图制图和数据编辑等。

这一部分内容是任何一个GIS系统都必须具备的功能。

第三篇是空间分析篇,包括七到十一章,主要讲解矢量和栅格数据空间分析、几何网络分析、交通网络分析和三维分析等内容。

第四篇是综合实例篇,包括第十二章,介绍了Esri全国软件开发大赛总决赛一等奖的获奖作品,并提供了全套的代码和文档,供读者学习参考。

在学习过程中,建议所有读者都读一下第一、二章,从总体上了解下ArcGIS Engine编程的概念和方法。

第二章介绍的ArcGIS二次开发的历史有助于读者了解ArcGIS Engine的由来,便于更好的理解ArcGIS Engine的程序设计与架构。

第三章是地图的基本操作,包括数据加载、地图浏览、量测、书签、数据视图和布局视图、鹰眼和图层控制等内容。

这一章是初学者必须认真学习的章节。

一则该章内容是所有GIS软件必备的,二来该章接口较少、相对简单,便于自学。

从未进行过编程的读者,建议将这一章的代码按照光盘逐字逐字的重新敲一遍,以体会软件编译与简单调试的技巧。

第四章查询与统计对应于ArcGIS的选择菜单,包括属性查询、空间查询和图形查询,还包括选择集的设置和统计分析等功能。

第五章介绍地图的样式与符号化、专题制图、地图整饰等内容。

第六章数据编辑以一个编辑流程的操作顺序为线进行空间数据编辑的详细讲解。

这几部分内容是一个GIS软件的功能框架,如果读者特别是在校学生熟练掌握这些内容,也就能算一个合格的GIS程序员了。

空间分析篇的内容有一定的深度,读者可以根据需要有选择的学习。

第七章矢量分析介绍了空间拓扑和空间关系、叠加分析、数据格式转换、添加GPS数据和使用GP工具进行分析等内容。

第八章栅格分析的内容对应于ArcGIS的空间分析,可实现空间插值、填挖方的计算、密度分析等工程中常用的功能。

鉴于广大读者对网络分析很感兴趣,而现有的教材和参考书对这一部分往往语焉不详,或者概念不甚清楚。

本书特意安排了第九章几何网络分析和第十章交通网络分析两章供读者甄别学习,几何网络分析主要解决城市管线的网络分析,对应于ArcGIS的Utility Network Analysis工具条;交通网络分析用于模拟现实世界的交通网络,对应于Network Analysis工具条。

第十一章三维分析介绍了Multipatch和TIN的各种分析,还给出了SceneControl和GlobeControl进行三维可视化的方法,并给出了一个三维数字校园的综合实例,贴近学生生活,激发学习兴趣。

第十二章是Esri大赛全国总决赛一等奖的获奖作品,全部由在校本科生完成,代表了当年参赛的最高水平。

读者特别是在校学生可以此为对照,看看自己的编程水平处在一个什么样的位置。

在你认真学习完本书并掌握了本书的内容后,相信你的编程水平定会超过获奖作品的水平,那么你在全国的GIS 大学生也算是编程的佼佼者了。

本书读者应该特别注意光盘代码和数据的配合使用。

本书代码都经过严格的测试,确保都
能正确运行,如果在使用中发现不能正常运行的情况,首先应该检查自己的软件配置和数据情况,然后再去考虑代码是否存在错误。

本书的代码来源于作者的长期积累,其中必然有来自于ArcGIS Engine帮助和网上的代码,但是这些代码经过了多次加工,已无法溯源,也就无法一一标引。

同时在编入本书的过程中,为了方便读者的学习,减弱了很多代码的封装力度,但是虑及工程上往往具有较强的封装性,在本书的后几章中对代码进行了适度封装,读者要注意哪些函数是自己编写的函数,哪些是系统提供的函数。

还有,不同章节在实现类似功能的时候,代码也不完全一样,作者刻意保留了这些差别,目的是使读者认识到同一个功能可以具有不同的实现方法,便于开拓视野、打开思路。

除了第三章建议从未编程的读者一个个字母敲入之外,当掌握了代码输入的基本技巧和熟悉了基本的调试方法外,其他章节的代码建议直接拷贝自己的工程中,或者直接运行光盘的代码,在你体会到程序正确运行的喜悦的同时,也进一步激发了你学习编程的兴趣和克服困难的信心,这对于快速入门是大有裨益的。

因为很多初学者都是在学习了较长一段时间后,发现自己的代码总是不能运行而慢慢的磨掉了学习的信心和乐趣,从而放弃学习编程的。

此外读者在学习ArcGIS Engine编程的时候,要注意编程实现的功能和ArcGIS已有功能的联系。

实际上,大多工程项目的功能如果不编写程序,仅仅使用ArcGIS也基本上可以满足要求,之所以还要编程,目的无非是更便捷化、智能化、个性化一些。

在某种程度上来讲,编程不就是把软件多次点击实现的功能合并成一次点击而实现吗?在这种意义上说,读者要想学好编程,应该首先熟悉ArcGIS软件,在实现一些功能的时候,建议先在ArcGIS中操作一遍,看看他是如何设计和操作的,这有助于你优化代码编程流程和功能实现。

为使本书博采众长,特意邀请了多个高校的教师和企事业单位的一线程序员参加编写。

本书架构由山东科技大学的牟乃夏、戴洪磊,青岛市勘察测绘研究院的王海银,南阳师范学院的李丹,河南城建学院的高松峰和武汉理工大学的詹云军等多次讨论确定并各负责了一部分内容的编写。

参加本书编写的人员还有:山东科技大学的张灵先、杨腾飞、王普乐、祝帅兵、张园园,青岛积成电子有限公司的李乃林,北京洛斯达科技发展有限公司的刘永涛,济南大学的冯群,福建省地质测绘院厦门分院的洪平卫等。

我的研究生骆川、杨佰义、张昌景、郭俏琳、赵雨琪、张娟、朱海川、徐玉静、赵明月等,对各章节的文稿和代码进行了反复的检查和测试。

为了验证初学者,特别是在校本科生对本书的需求与期望,本科生林尚纬等人也对部分文稿进行了学习和编程,他们从一个初学者的角度提出了中肯的意见。

测绘出版社的贾晓林编辑为本书的出版付出了大量心血,在此一并表示衷心感谢!
本书出版得到山东省“泰山学者”建设工程专项经费和山东科技大学教育教学研究“群星计划”项目(qx2013209)的资助,特此鸣谢!
尽管本书有九十余万字,但是依然不能全面阐述ArcGIS Engine编程的所有内容。

ArcGIS Engine的帮助才是最全面、最丰富的编程知识库,读者在熟悉了ArcGIS Engine的编程后,要学习和习惯使用他的帮助来完成本书没有覆盖的功能。

虽然本书编写用了两年半的时间,所有章节多次易稿,但由于我们水平所限,错误与不妥之处在所难免,敬请读者批评指正。

读者的批评和建议请致信:mounaixia@,或者访问作者的新浪博客和微博,作者将定期发布本书的勘误,读者的建议、意见和学习指导等。

代码的完备性问题
商业使用问题。

相关文档
最新文档