GIS理论与实践讲义三 ArcGIS空间数据的转换与处理目的z掌握地图投影的定义与转换z掌握利用build或clean对空间要素建立拓扑z使用ArcToolbox工具内容z介绍地图投影的定义,学习ArcGIS中地图投影转换的方法z利用build或clean对空间要素建立拓扑z使用ArcToolbox工具,实现矢量栅格数据的互相转换、数据裁切等操作一、 地图投影定义与转换由于数据源的多样性,当数据的空间参考系统(坐标系统,投影方式)与用户需求不一致时,就需要对数据进行投影变换。
同样,在完成本身有投影信息的数据采集时,为了保证数据的完整性和易交换性,要定义数据投影。
地球是一个不规则的球体,为了能够将其表面内容显示在平面上,就必须将球面地理坐标系变换到平面坐标系统。
因此,运用地图投影方法,建立地球表面和平面上点的函数关系,使地球表面上由地理坐标确定的点,在平面上有一个与它相对应的点。
地图投影的使用保证了空间信息的地域上的连续性和完整性。
1.在ArcGIS中显示坐标系统(1) 显示数据组坐标系统1)在桌面上打开ArcGIS应用程序2)鼠标右键单击layers打开properties属性对话框,并单击Coordinate System 来查看Data Frame的坐标系统图5 Data Frame properties(2) 显示数据层坐标1)在刚打开的地图文档的Layers中加载一个图层2)鼠标右键单击该图层打开properties属性对话框,并单击Source来查看该图层的坐标系统2.对没有坐标系统的图像赋予坐标系统(1) 对新建图层设置其坐标系统在ArcMap中打开ArcCatalog,在左侧目录树中选择一个存放新建图层的文件并单击,然后在窗口主菜单中单击File命令,选择New选项在其子选项中选择要新建的图层(2) 单击Edit在上述对话框中有三个选项可以选:Select, Import, New.Select 是从ArcGIS系统中内置的一些坐标系统中选择坐标系统Import 是从电脑中已存在图层的坐标系统作为参考坐标系统New 是自己编辑一个坐标系统。
(需要知道坐标系统的一些参数) 下面分别介绍以上三个操作:(3) 单击Select上面两个坐标系统,这里选择Project Coordinate Systems上面对话框中是我们可以选择的投影方式,这里我们只要介绍两个常用的投影:Utm(通用横轴墨卡托投影- Universal Transverse_Mercator)和Gauss Kruger(高斯克吕格投影)。
两种投影在操作方法上相似,我们以Gauss Kruger为例。
(4) 单击Gauss Kruger上面对话框中是几种大地坐标系(参考椭球体)(5) 选择Beijing1954上述对话框中是我们要选择的以哪个经线为中央经线的投影带,这个要根据我们所处的地理位置来选择中央经线。
然后选择一个投影带再单击Add,就可以把我们要选择的坐标系统加到我们新建的Shapefile中,单击OK就完成了对新建图层坐标系统的加载。
(6) 单击Import在上述对话框中选择我们要作为参考坐标系的图层存放的位置,然后单击Add,这样就把我们选择的参考坐标系加到我们新建的Shapefile中,单击OK就完成了对新建图层坐标系统的加载。
(7) 单击New选择Project Coordinate Systems上面对话框就是我们要自己定置的坐标系统参数,第一个Name是坐标系统的名字,第二个Name是我们选择投影方式的名字,再下面就是设置投影的参数,还有的就是我们要选择的Geographic Coordinate System,单击Select 可以进行选择。
下面是我国地区的Albers投影所选择的参数设置,我们可以根据下面的参数填写一下上面的参数设置。
填加后单击OK,就完成了对新建图层坐标系统的自定义加载。
3.不同坐标系统之间的转换(1) 栅格数据的坐标系统转换在ArcToolBox中选择 Data Management Tools | Projections and Transformations | Raster | Project Raster工具,打开Project Raster对话框在Input raster 文本框中选择需进行投影变换的栅格数据,在 Output raster文本框键入输出的栅格数据的路径和名称,单击Output coordinate system文本框旁边的图标,打开Spatial Reference属性对话框,定义输出数据的坐标系统。
变换栅格数据的投影类型,需要重采样数据。
Resampling teachnique是可选项,用以选择栅格数据在新的投影类型下的重采样方式,默认状态下是NEAREST,即最临近采样法。
下拉菜单中还有双线性内插和三次卷积。
我们这里选择默认的NEAREST。
Output cell size 定义输出数据的栅格大小,默认状态下与原始数据栅格大小相同;支持直接设置栅格大小;或通过选择栅格数据来定义栅格大小,则输出数据的栅格大小与该数据相同。
再单击OK按钮,完成上述操作。
对于Raster数据坐标系统的转换还可以通过下面将要介绍的Define Projection来转换,具体方法跟转换Shape数据的方法一样,此方法将在Shape转换中介绍。
(2) 矢量数据的坐标系统转换我们可以通过以下两种方式进行转换:¾在ArcToolBox中选择 Data Management Tools,|Projections and Transformations| Define Projection 工具,打开Define Projection对话框在Input Dataset or Feature Class中选择我们要定义的数据,在Coordinate System中输入我们要选择的坐标系统。
单击OK完成操作。
其中我们要定义的数据格式可以是前面介绍的Raster数据。
¾在ArcToolBox中选择 Data Management Tools,| Projections and Transformations |Feature |Project.进入下面的对话框在Input Dataset or Feature Class中输入要变化的坐标系统的shape数据,Output Dataset or Feature Class 是选择转换后数据的路径和名称,Output Coordinate System是选择我们要转换的投影类型。
然后单击OK完成此操作。
二、 空间要素的拓扑创建拓扑表达的是地理对象之间的相邻、包含、关联等空间关系。
创建拓扑关系可以更真实地表示地理要素,更完美的表达现实世界的地理现象。
拓扑关系能清楚地反映实体之间的逻辑结构关系,它比几何数据有更大的稳定性,不随地图投影的变化而变化。
创建拓扑的优势在于:1.根据拓扑关系,不需要利用坐标或距离,就可以确定一种空间实体相对于另一种空间实体的位置关系。
2.利用拓扑关系便于空间要素查询。
例如某条铁路通过哪些地区,某县与哪些县相邻等。
3.可以根据拓扑关系重建地理实体。
例如根据弧段构建多边形、最佳路径的选择等。
在Coverage Properties对话框中,可看到其中的General 栏提供一些有关Coverage的重要信息,包括有哪些地理要素类,哪个地理要素类有拓扑关系,在磁盘上的存储位置以及数值精度等。
当单击其中的一个地理要素类时,该地理要素类包含的要素数量会出现在该栏的底部。
如果应该拥有拓扑关系的要素类还没有建立拓扑关系,或其拓扑关系需要更新,可以利用Coverage Properties对话框中的Buile或Clean命令为其建立拓扑关系。
对于多边形(polygon) 和区域(region)Coverages来说,如果一个多边形或区域要素仅仅有初步的拓扑关系,一个红色警告指示会出现在Catalog中该Coverage的按纽上;建立好拓扑关系后,该红色警告指示消失。
下面以一个实际例子来说明空间要素的拓扑创建过程:z打开ArcCatalog,在ArcCatalog目录树下新建一个文件夹,并命名为tuopu.z右键tuopu文件夹,在下拉菜单中选择New 单击,在出现的下拉菜单中单击Shapefile.弹出如下对话框。
在弹出的对话框中给所创建的Shapefile要素类命名,并选择要素类型,要素类型可以通过下拉菜单选择Polyline, Polygon, MultiPoint, MultiPatch 等要素类型。
接着点击Edit 按钮,打开Spatial Reference 对话框,定义Shapefile的投影坐标,如果选择了以后定义Shapefile的坐标系统,那么直到被定义前,它将被定义为Unknown.单击OK按钮,新创建的Shapefile在文件夹中出现。
z在ArcMap中添加新创建的Shapefile 数据,启动Editor,对该图层进行编辑。
z打开ArcToolbox,点击Conversion Tools 中的To Coverage 命令的转换。
(1)利用clean 建立拓扑关系ArcCatalog 目录树:z右击需要建立拓扑关系的Coverage,打开Coverage操作快捷菜单。
z右击Properties命令,打开 Coverage Properties 对话框。
z单击General 标签,进入General选项卡。
z在Feture classes 表格,单击需要建立拓扑关系的地理要素类。
z单击Clean 按钮,打开Clean 对话框。
z根据具体情况,输入模糊( Fuzzy )及悬挂(Dangle)容限值。
根据需要,选中Clean lines only 复选框。
z单击OK按钮,返回Coverage Properties 对话框。
z单击“确定”按纽,完成Coverage 拓扑关系建立。
需要利用Clean建立拓扑关系时,可以提前利用Coverage Properties 对话框中的容限值栏设置Coverage 的模糊,悬挂及其他容限值。
(2)利用build 建立拓扑关系z右键在ArcCatalog目录树下的line2文件,在快捷菜单中点击properties.弹出如下对话框,点击Build按钮z在Build对话框中选择创建拓扑后的要素生成类型,这里选择Poly。
单击OK,返回Coverage Properties对话框。
z单击“确定”按纽,完成Coverage 拓扑关系建立。
z在ArcMap中加载Build后的要素,如图中所示:三、 数据转换数据转换工具:Conversion Tools1.数据结构转换(1) 栅格向矢量转换栅格向矢量转换的目的,是为了将栅格数据分析的结果,通过矢量绘图装置输出,或者为了数据压缩。