![bf51ebd69628f468f0e2289589213b7f.png](https://i-blog.csdnimg.cn/blog_migrate/38866baff848aed5475e00389005b4d8.jpeg)
一、概述
ArcGIS产品线为用户提供一个可伸缩的,全面的GIS平台。ArcObjects包含了许多的可编程组件,从细粒度的对象(例如单个的几何对象)到粗粒度的对象(例如与现有ArcMap文档交互的地图对象)涉及面极广,这些对象为开发者集成了全面的GIS功能。新版ArcMap引入了制图、地理处理和 ArcGIS Network Analyst 扩展模块中的新特性和新功能。同时,平台体系新增众多产品及业务应用,助力科学分析与智能决策,平台三维、大数据、人工智能等核心能力大大增强,为用户打造了更智能、更强大的地理空间云平台。
二、操作技巧描述
1、影像格式的转换
例如把jpg格式转换为tiff格式。可以在arctoolbox中的conversiontools-->to Raster-->Raster to Other Format multiple)。
2、矢量化准备
矢量化前建立一个.mxd工程文件,该文件为索引文件,记录的是所有图层的相对路径和图层渲染标注等信息。然后通过arcaltalog建立点线面图层,添加到工程中即可进行矢量化操作,主要叠放顺序是点在上,线在中间,面下面,待矢量的底图放到最新面。在大的工程中往往需要建立personalgeodatabase数据库,主要是方便管理,并且可以通过access打得开。
3、矢量化设置捕捉功能
在Editor--Snapping->SnappingToolbar可以设置捕捉的类型,如点、节点、边界等。
4、设置点显示的比例尺
在矢量化时,如果设置了点的大小,在放大和缩小图层是发现点不会底图放大缩小变换,需要设置缩放的比例尺。
5 、合并要素
如果想对两个点,线,面要素合并成一个要素,可以通过shift选择要合并的要素,然后在Editor->merger,需要指定要合并到的目标要素。
6、为底图做地理配准影像配准空间参考配准地理参考过程地理Georeferencing
校正是对没有坐标信息的底图,如tiff,img等底图赋予地理坐标信息的过程。可以通过通过右击,弹出的功能条中选择Georeferncing工具,然后对要进行校正的底图添加控制点(controlpoint),一般最少添加4个角上控制点,可以通过点击连接表打开控制点的坐标信息并修改,添加超过3个后会出现残差。如果精度不够可以多加些点进行加密。只有校正后的图片才可进行矢量化。该方法是针对影像做配准的。
而空间配准spatialadjustment是指的对矢量图层的配准。
7、栅格影像的裁剪
在对一个大的遥感或者地形图操作时,往往不需要其全部范围。那么可以根据定义的范围对底图进行裁剪,可以根据已有的边界图形裁切(勾选使用输入裁切要素的几何特征作为边界,生成的是不规则)或者根据边界图形的最大最小值组成的矩形进行裁切。
工具在:ArcToolbox-->DataManagerment Tolls-->Raster-->Raster Processing-->Clip。
8 、ArcGIS矢量的裁剪
工具位于ArcToolbox-->Analysis Tools-->Extract-->Clip。其中输入要素Input Feature为被裁切的图层(可以为点线面),clip feature裁切要素为裁切范围边框(需要为面)。注意:裁切后的要素数量是根据原裁图层决定的,如果原图层的一个要素对象被裁切为多个部分,那么裁切后作为一个多部分对象,属性表中仍然为一条记录。
9、ArcGIS矢量数据的空间校正
空间校正的目的是对于地理上不匹配的图层进行匹配校正处理,例如两个图层之间存在一定偏移时。首先调出空间校正spatialadjustment工具。然后开启编辑功能,然后“spatialadjustment”-->set adjust data设置要校正的图层。然后通过工具new displacementlink工具拉出带箭头的线到对应的点位置即可,一般需要4个对应点即可。设置好对应点后点击校正rectify即可。
10 、ArcGIS坐标点生成点图层文件(也可以带属性)
首先准备存有XY坐标的xls或者dbf格式的数据,其中必须有XY的列头。通过arcgis的File-->add data-->add x y data即可。
导入的数据为dataevent,然后右击导出export-->导出为shapefile格式即可。
11、ArcGIS投影转换
坐标转换是指不同的坐标系统之间的转换,例如从北京54转到西安80下或从6度分带装换到3度分带上。工具位于:ArcToolbox-->Datamanagerment Tolls-->Projections andTransformations-->Feature-->Project
我国跨越的带宽:
六度带我国跨11个6°带(为13-23带),一般用于1:2.5万及1:5万地形图;
三度带我国跨22个3°带(为24-45带),一般用于1:1万的地形图。
各个分带的中央经线算法:
六度带为:带号×6°-3°(如16带中的中央经线为16×6°-3°=93°)
三度带为:带号×3°(如31带的中央经线为31×3°=93°)
我国经度跨度为:73°E~135°E(最西端新疆的帕米尔高原上-黑龙江与乌苏里江的主航道汇合);
故而我国的六度跨带为13~23带,三度带为24 ~45带。
一个好记的方法:在中华人民共和国陆地范围内,坐标(Y坐标,8位数,前两位是带号)带号小于等于23的肯定是6度带,大于等于24的肯定是3度带。
地形图上公里网横坐标前2位为带号,例如1:5万地形图上的横坐标为20345486,其中20即为带号,345486为横坐标值。
12、ArcGIS重叠数据的交集叠加分析
叠加分析就是找出两个图层之间的公共交集部分,并重新生成了一个新的图层。面面叠加的面,面线叠加的线。其中的属性信息是两部分的叠加。
工具位于:ArcToolbox-->AnalysisTools-->overlay-->Intersect
13、 ArcGIS重叠数据交集的擦除 erase
如果两个图层的重叠部分需要删除,可以通过叠加分析出来的重叠区域或者直接用一个图层对另一个图层进行擦除erase操作,叠加分析后获取到了一个新的图层。
工具位于:ArcToolbox-->AnalysisTools-->overlay-->Erase
14、ArcGIS挑子区
通过对已有的针对一个线或面要素对象操作,进行画出子图形。线对象操作:打开编辑,可以编辑工具中的整形要素工具reshapefeaturetool对线要素进行切割,把多余部分切除掉;或者使用分割split工具对一个线要素进行分割两部分(如果再想合并成一个可以通过shift多选后选择合并merger工具)。多边形要素操作:打开编辑后,可以选择切割reshape feature tool进行裁切掉多余部分;通过分割cut polygon tool工具对多边形分割为多个多边形,其属性也是复制;也可以在多边形内部画一个子区域对多边形挖空,注意所画的分割图形要交叉闭合。
15、ArcGIS字段的结构编辑
对于一个已经属性列定义好了的图层,如果需要修改其属性在arcgis中是不可以的。但可以其他方式,例如shapefile文件的可以找到文件对应的.dbf文件,然后选择用excel2003打开,对其中的列属性就行修改即可;如果是在mdb数据库中,则可以通过access数据库以设计表的形式属性列属性即可。
16 、ARCGIS裁剪区 merger union trace
合并:对两个要素对象进行合并,可以打开编辑后,选择要合并的要素,选择编辑editor-->合并merger,弹出要合并的到的目标要素,完成后多个要素会合并成一个要素(合并后只保留所选择的目标要素的属性)。
联合:对另个要素联合是保留原有的要素对象,重新生成一个新的合并的要素。方法与上类似,选择联合union即可。
追踪裁切:对已一个多边形对象按照另一个对象的边界分割,可以打开编辑选中两个多边形,然后选择裁切多边形cutpolygon tool-->再选择追踪trace工具,把要裁切的多边形的两边包围起来即可实现裁切。
17、ArcGIS拓扑及拓扑规则的建立
①拓扑定义:空间拓扑描述的是自然界中地理对象的空间位置关系,是地理对象空间属性的一部分。②地理对象的拓扑关系,主要有以下三种:相邻: 相邻关系确认对象之间是否在某一边界重合,例如行政区划图中的省、县数据。重合: 重合关系确认对象之间是否在某一局部互相覆盖,如巴士线路和道路之间的关系。连通: 连通关系可以确认通达度、获得路径等。③构建拓扑意义:主要意义就是用于保证数据质量。拓扑在空间数据模型中表达和规定数据之间的空间关系。通过表达和规定这些空间关系,拓扑尽可能将地理数据与现实世界保持一致。拓扑是精准地表达空间数据的有效方法,通过严格地约束要素之间的关系,提高了空间数据的准确度和可用性。④拓扑在arcgis软件中实现:在arcgis中只能对Coverage和Geodatabase这两种数据模型实现拓扑。下面以个人数据库test.mdb为例,在其中创建数据集dataset,指定坐标系,创建点线面要素图层。创建一些点和线,对面的生成可以使用拓扑工具中的打断相交线planarizelines工具对线段交点处打断操作(设置的打断容差指的是在该容差范围内要进行打断操作),然后利用拓扑工具--构建多边形工具construction polygons由线段构建多边形。在数据集上右击—新建--建立拓扑,弹出的建立拓扑对话框输入名称,容差,要进行拓扑的图层,设置等级,添加规则(重点部分,规则可以定义多个),点击确定开始创建拓扑,创建后可以提示是否进行验证validation,验证后即可以把拓扑加载到arcmap中查看拓扑错误,可以看到错误的会以红色标记出来。这样就可以进行编辑修改了,修改后可以多次使用validate工具查看拓扑错误。(对于多边形中空的可以通过创建多边形—追踪工具,补上漏洞即可。对于多边形重合部分可以通过切割多边形cutpolygons tool+追踪工具trace,再使用merger工具合并即可。)⑤拓扑规则在AE中实现:首先,拓扑作为比较高级的功能,需要在程序里首先注册相应的功能代码。实现这一必要步骤的接口是:IAoInitialize,它有Initialize方法,必须在任何的其他组件前面使用,它可以初始化一个产品代码。这是C#的方法声明格式:public esriLicenseStatus Initialize(esriLicenseProductCode ProductCode); esriLicenseProductCode有六个常量,我们在这里要用到的是esriLicenseProductCodeEngineGeoDB。下面看其拓扑实现的结构流程:首先需要获取工作空间,定义IWorkspaceFactory接口,它的作用是打开相应的数据库文件,然后赋予IFeatureWorkspace接口,然后获取相应的数据集接口IFeatureDataset,将IFeatureDataset赋予 ITopologyContainer以获取属于这个数据集的拓扑集合,然后利用ITopologyContainer的CreateTopology方法创建具体的拓扑类,这样就创建了属于相应数据集的拓扑了。然后就是通过一些接口和函数来设置这个拓扑的特性:图层、容限值、精度等级以及拓扑关系规则,最后通过ValidateTopology方法执行这个拓扑即可。可以看到它的实现过程跟上面的是一样的。
18、 ArcGIS点线区要素之间的相互转换
要素之间的转换包括点线面要素类型之间的相互转换。工具位于:arctoolbox—>datamanagerment toolsàfeature下
①面转线:polygon to line是把面的轮廓线转换为一个线对象;面转点:feature topoint是只把面对象的中心点转换为点要素;面折点转点:featurevertices to points把面的轮廓的所有的折点转化为点。②线转面:feature to polygon是把闭合线转换为面对象。线转点:feature topoint是把线的中心点转为点。线折点转为点:featurevertices to points是把线的所有折点转为点。③点转线:point to line是把有序列的点集合转为线;(测试发现不理想,会把所有的线最后点连上)
19、CAD文件(dwg)转Arcgis格式(shp)
打开对应的CAD数据图层(如polyline),右击图层—export data,保存为shapefile格式即可。或者conversion toolsàtoshapefile –feature class to shapefile(multiple)
20、 ArcGIS延长线工具(批量处理未闭合线)
对于本应闭合的多义线或者线段终点本应于另一个线段相交,但是由于误差导致没有相交。可以对要素图层进行批量延长,需要设置容差值。工具位于arctoolboxàeditingtoolsàextendline工具。
21 、ArcGIS地图表达之建筑物阴影效果(百度地图)
需要把面图层放到个人数据库mdb中才可以。右击多边形要素—转换为制图表达convert symbology representation,然后对打开制图表达的属性对话框,设置其颜色和偏移量即可。但是必须保存该工程后设置的地图阴影才会保存,因为该制图表达并不是存在数据库中,而是可以理解为一种渲染,保存在mxd文件中。(当然也可以对多边形复制一份,然后对其进行移动editortool—>move达到阴影效果,但是这样增加了数据量。)
22、ArcGIS DEM(TIN)生成等高线文件
例如如果输入数据为img,可以通过3D analyst toolsàconversionàfromrasteràrasterto TIN转成TIN;然后通过3D analyst toolsàterrain and TIN surfaceàsurfacecontour转为等值线;由于等值线间隔比较棱角,可以通过advancedediting高级编辑工具中的平滑工具(光滑线)进行平滑处理。如果等高线的点过少可以进行editingtools--加密density方法加密。
23、 ArcGI中DEM生成等高线文件
在生成等高线文件时,建议使用3Danalyst toolsàrastersurfaceàcontour工具,对栅格图形提取等高线。该方法生成的等高线稍微圆滑些,精度也稍微高些。
24、ArcGIS线节点增密、平滑线与改线方向
功能位于editingtools下面,①加密density是对线段和多边形进行加密,延长线extend line是根据指定的长度的容差对线段进行延长操作。②倒置线段flip line是值对线段的起止端点进行倒置的操作。③概化generalize是对线或面的概化,如果是直线的话中间的节点删除只保留拐点坐标。④修整线trim line是对于没有任何交点的悬挂线进行删除,此外对于超过相交点的部分超过指定容差进行删除。
25、 ArcGIS文本坐标点在googleearth中展示
注意的是在arcmap中的标注信息转换为kmz格式会在googleearth上显示出来。此外,文本格式的坐标必须包含X,Y坐标,如果显示高程还需要有Z坐标值。转换工具位于conversion toolsàTo kmlàlayerto KML。直接在Googleearth即可打开显示。
26、ArcGIS自动矢量化(ArcScan工具的使用)
Arcscan工具可以对灰度的栅格图像进行自动矢量化,工具位于右击工具条空白部位àarcscan即可调出。主要底图必须为灰度图像,在arcgis中打开后要设置其显示的方式为二值显示,即可对整个区域或者部分区域进行矢量化的工作,具体矢量化成面还是线等设置可以通过选项设置。
27、Arcgis项目一等高线和DEM的制作流程
①获得等高线文件(等高线文件一般从地形图上矢量化过来);②然后利用3Danalyst toolsàTINmanagermentàcreateTIN生成tin数据;③然后可以利用生成的tin数据通过3Danalyst tools—>conversionàfrom TINàTIN to raster(也可以直接通过栅格插值rasterinterprolation-->地形到栅格topo toraster);④利用生成的栅格raster数据就可以进行坡度,坡向分析了(spatial analysttools—>surfaceàaspect&& slope)(即首先把矢量数据转为不规则三角网中间文件,然后再转换为栅格文件,就可以进行各种坡度,坡向,阴影分析了。)
28、DEM相关知识
DEM(digitalelevation model)是通过数字表达地形起伏变化的数据,即具备了高程信息的数字地面模型(DTM)。DEM是相对于纸质地形图而言的一种新型的地形图,是GIS空间数据库的重要组成部分,是地表演化和大气过程模型化的基础数据,以及GIS地学分析与三维空间数据处理及地形分析的核心数据。
其数据类型有三种,即矢量型(等高线contour),规则型(grid型),不规则三角网型(TIN),
矢量型:主要采用类似线状要素表达DEM。优点是比较直观,缺点是不便于完成空间三维特征的分析。来源主要是对地形图的矢量化获得。
规则格网模型:又称为栅格型数据,主要是通过规则的格网单元来表达地形特征(如地面高程),其值是通过采样点的内插获取。优点是数据简单,较方便处理和存储;并且易于与航空、航天等遥感数据结合。缺点是在平坦地区数据存在冗余,地形复杂处表达不够精细。
不规则三角网:triangulatedirregular network,通过对原始采样点,通过一定规则构建不规则三角面表达地形。优点是减少了规则格网在平坦地区的数据冗余,增加的复杂地形表达的精细程度。缺点就是数据稍微复杂。
29、 ArcGIS将栅格图片作为矢量要素的属性
首先确保文件存储在数据库(如mdb)操作,在其中的要素图层中添加存储图片的字段(如pic),注意类型一定要指定为栅格raster。然后打开编辑,即可的对属性表的图片字段(pic)通过右击可以添加图片。
30、ArcGIS从几何图形获取点坐标
对于arcgis的点线面的几何形状及坐标值是存在shape字段中的,但如果想获取其中的几何信息(如点图层的XY坐标,线图层的中间点XY坐标或者长度,面图层的中心点XY坐标或周长面积等)。可以通过打开要素属性表(如点图层),添加新字段用于存储想获取的信息(如X,Y坐标字段),然后在字段上选中该列,右击属性à计算几何(calculate geometry);同理可以获取其他要素图层的相关信息。
31、ArcGIS之按属性对数据要素分层
当一个要素图层包含多种类型的要素时(必须点图层中包含医院,学校,银行等各种要素),想按照其中的类别提取出来作为单独的图层,可以使用属性表中的查询功能。
例如点图层中有一个名称name字段,可以
①首先打开属性表à通过属性查询,打开属性编辑器,②在其中编辑查询公式,如 [NAME] LIKE'*学*'就可以查询所有包含“学“的要素(注意单引号和星号都是英文状态)。还可以使用逻辑表达式,如or, and,not like等进行较为复杂的查询。③对于查询到的后,可以通过“右击图层—>数据—>导出数据”,选择导出选中的要素数据。保存为shapefile格式即可,对于查询到的不符合条件的要素再进行删除修改操作即可。
32、ArcGIS自动计算面积长度字段,一个图层多种显示样式
①把地图要素创建到数据库mdb中后,即可自动建立了长度和面积字段,并且新建要素后会自动计算。②对于一个图层要想用多种样式显示,可以通过设置图层的样式:右击图层à属性—>样式,可以根据不同的属性值设置显示的样式。设置后必须保存工程文件才会记录当前的样式设置,因为该信息记录在mxd文件中。
33、ArcGIS多重缓冲区multi-buffer
在工作中常用到多重缓冲多边形,但是自带的analysis tools-proximity-buffer是只能缓冲一次,但multiple ring buffer往往报错。那么可以打开自定义的缓冲向导。方法是:customize--customize mode,然后commands选项卡--tools--buffer wizard工具拖拽出来即可使用了。
34、线线快速创建面
1、需要有一个面图层存在,用于存储转换后的面要素。方法是在高级编辑下的工具“由线建立面”2、表格的连接join:要求有一个字段相匹配,名称可以不一样,但是数据类型必须一致(如都是文本或者数字)。join方法是该链接是视图上的暂时链接,如果要永久链接,则需要重新到处一份数据即可。常用于1:1 1:M表格的关联relate:较多的用于一对多,多对多,关联后不能显示关联好了,不能使得数据的扩充,只能帮助查看方便,需要identify查看即可(用处不大)。4、arcscan工具只能对黑白图层处理,所以①首先加载单个波段②通过重分类,分为2类,即二值化(如果不能分类则先计算唯一值,再点击分类即可),这时候就可以使用arcscan工具了。使用时需要开启编辑工具,然后使用倒F形状的图标,拉动一个区域即可对选中区域自动矢量化。图层的符号化显示:分类方法:①自然分裂点:在数据跨度较大的地方自动设置断点,使用要素值变化较大的情况②等间隔法:每个区间内跨度相同,使用连续变化的情况③分位数法:每个区间中数量相同,使用分布比较平均的情况④集合间距法:使用要素呈几何分布的⑤标准差发:体现相对平均值的离散程度,使用要素分布正态分布。⑥自定义间隔法:手动分割。符号库:自定义--样式管理器,可以根据现有的符号自己修改,拼接,也可以通过添加自己的图片作为符号。同时自己如果自定义可以下载FontCenter插件自己绘制。自己新建的符号库是保存到了mxd中的,需要首先把style符号库添加进来才可以用。匹配的时候,加载后,选择图层属性呢--类别--与样式中的符号匹配,选择自己的符号库,和匹配的字段,就可以自动匹配了。比如国家土地利用的分类,可以按照统一的制图标准显示。