资源预览内容
第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
亲,该文档总共8页全部预览完了,如果喜欢就下载吧!
资源描述
第三章 数据的采集与组织练习1:某地区地块的拓扑关系建立一、背景拓扑关系对于数据处理和空间分析具有重要意义,拓扑经常应用于地块查询、土地利用类型更新等。二、目的通过本例,让读者掌握创建一个要素数据集的拓扑关系的整个流程,并对创建拓扑后的一些工作,如拓扑错误检测、拓扑错误修改、拓扑编辑等基本操作有一个较全面的了解。三、要求在Topology数据集中导入上述两个Shapefile,建立该要素数据集的拓扑关系,使拓扑生效后检测拓扑错误,修改拓扑错误,最后进行拓扑编辑。四、数据Blocks.shp、Parcels.shp,存放在/ChP3/Ex1中,请将其拷贝到E:/ChP3/Ex1。结果数据存放于/ChP3/Ex1/Result中。五、操作步骤1、创建地理数据库(1) 在ArcCatalog树中,右键单击test_result文件夹,单击New,单击Personal Geodatabase,输入所建的地理数据库名称:New Personal Geodatabase。如图1所示。在新建的地理数据库中创建要素数据集,如图2所示。 图1 创建地理数据库 图2 创建要素数据库(2) 打开New Feature Dataset对话框,如图3所示,数据集命名为Topology。(3) 单击Edit按钮,打开Spatial Reference属性对话框,如图4所示。 图3 New Feature Dataset对话框 图4 Spatial Reference属性对话框(4) 单击Import按钮,选择要与之具有相同坐标系统的数据集:Blocks.shp或Parcel.shp。(5) 单击Add按钮,返回Spatial Reference属性对话框,这时要素数据集定义了坐标系统,单击确定按钮。 2、向数据集中导入数据(1) 在ArcCatalog树中,右键单击Result文件夹中的Topology数据集,单击Import,单击Feature Class(multiple)。(2) 打开Feature Class to Geodatabase(multiple)对话框,如图5所示。导入Blocks和Parcels两个Shapefile,单击OK按钮。 图5 Feature Class to Geodatabase(multiple)对话框 图6 向数据集中导入数据3、在要素类中建立子类型由于原数据Blocks和Parcels两个有子类型,把要素分为了居民区和非居民区,而数据导入到数据集后并没有子类型,所以在导入数据后为每个要素类建立两个子类型:Residential和Non-Residential。(1) 在Blocks要素类上单击右键,单击Properties,如图8所示。打开Feature Class Properties对话框,如图7所示。(2) 打开Feature Class Properties对话框(Subtypes选项卡)。在Subtypes Field下拉框中选择一个子类型字段:Res,在Default Subtype窗口中出现所选字段的默认的新的子类型名称:New Subtype。(3) 在Subtypes栏中的Code列下输入新的子类型代码及其描述,描述将自动更新Default Subtypes窗口中的内容。(4) 重复上述步骤,添加其他子类型。如图7所示,添加了两个子类型:Residential和Non-Residential。单击确定按钮,会发现属性表中的Res字段发生了变化,如图8所示。 图10 属性表中发生变化的Res字段列图9 Feature Class Properties对话框4、创建拓扑(1) 在ArcCatalog树中,右键单击Topology要素数据集,单击New,单击Topology。打开New Topology对话框,它是对创建拓扑的简单介绍,如图11所示。(2) 单击下一步按钮,打开确定名称和聚类误差(Cluster Tolerance)对话框,如图12所示。输入所创建拓扑的名称和聚类误差。聚类误差应该依据数据精度而尽量小,它决定着在多大范围内要素必须具有一致性。 图11 New Topology对话框 图12 确定名称和聚类误差对话框(3) 单击下一步按钮,打开选择参与创建拓扑的要素类对话框,如图13所示。(4) 单击下一步按钮,打开设置拓扑等级数目对话框,如图14所示,设置拓扑等级的数目及拓扑中每个要素类的等级。 图13 选择参与创建拓扑的要素类对话框 图14 设置拓扑等级数目对话框(5) 单击下一步按钮,打开指定拓扑规则对话框。(6) 单击Add Rule按钮,打开Add Rule对话框,如图15所示。在Feature of feature class下拉框中选择Parcels,在Rules下拉框中选择Must Not Overlap,表示一个区域不能与另一个区域重叠,可以连接在一起,也可以分开。若两个区域重叠,则违背所定义的拓扑规则,出现拓扑错误。在对话框的右侧面板,显示所选规则的示意图及简单介绍。图15 Add Rule对话框(7) 单击OK按钮,返回指定拓扑规则对话框,可以看到已经创建了一个规则,如图16所示,这个规则将控制同一个要素类中的要素的拓扑关系。(8) 单击Add Rule按钮,创建另一个规则。在Features of feature class下拉框中选择Parcels要素类中的Residential,在Rules下拉框中选择Must Be Covered by,在Feature class下拉框中选择Blocks要素类中的Residential。Must BCovered by表示一个图层中某个要素包括另一个图层中的一定要素。在本例中,Blocks中的居民区包括了Parcels中的居民区。(9) 单击OK按钮,返回指定拓扑规则对话框,可以看到已经创建了两个规则。 图16 添加了一个规则 图17 信息总结对话框(10) 单击下一步按钮,打开参数信息总结框,如图17所示。(11) 单击完成按钮,出现进程条,当进程结束时,拓扑创建完成(12) 出现一对话框,询问是否立即使拓扑有效。如图18所示。单击否按钮,在以后的工作流程中使其生效,创建的拓扑出现在Catalog树中;单击是按钮,出现进程条,进程结束时,拓扑已经生效,创建的拓扑出现在Catalog树中,如图19所示。图18 询问是否是拓扑生效图19 创建的拓扑出现在Catalog树中5、查找拓扑错误(1) 在ArcCatalog树中,右键单击新建的拓扑,单击Properties。(2) 打开Topology Properties对话框。单击Remove All按钮,将已有的两个规则删除。(3) 单击Add Rule按钮,打开Add Rule对话框, 重新定义一个规则:Must Not Overlap With,在Features of feature class下拉框中选择Parcels中的Non-Residential,在Feature class下拉框中选择Blocks中的Residential。这个拓扑规则表示Parcels中的非居住区必须与Blocks中的居住区不重叠。(4) 单击OK按钮,返回Add Rule对话框,定义了一个新规则。单击确定按钮,完成拓扑修改。(5) 在ArcMap中加载数据creatingTopology、Parcels和Blocks三层。先将某个图层设为可编辑状态。调入Topology工具栏,如图20所示。在Topology下拉框中选择要编辑的拓扑图层creatingTopology。图20 Topology工具栏(6) 拓扑修改(更改名字、修改规则等)后需要使拓扑生效,可以通过单击Topology工具栏中的按钮,使图面上的指定区域拓扑生效、按钮可以使当前可见图面的拓扑生效、按钮可以使整个拓扑生效。生效的过程其实就是检验拓扑错误的过程,若拓扑规则有错误,则拓扑生效后,会把有错误的地方自动显示出来。在本例中,可在加载了数据后,单击按钮,使拓扑生效,这时视图中出现四个深色方块,即是拓扑错误的地方。如图21所示。图21 显示拓扑错误的地方(7) 单击Topology工具栏中的检测拓扑错误按钮,打开Error Inspector对话框,并单击Search Now按钮,即可检查出拓扑错误,并在下方的表格中显示拓扑错误的详细信息,如图22所示。图22 Error Inspector对话框 6、修改拓扑错误creatingTopology的拓扑规则表示Parcels中的非居住区必须与Blocks中的居住区不重叠。当Parcels中的非居住区与Blocks中的居住区重叠时,产生拓扑错误。为了修改拓扑错误,可以把Parcels层设为编辑状态,把产生拓扑错误的Parcels中的Non-Residential改为Residential,或者把Blocks层设为编辑状态,把产生拓扑错误的Blocks中的Residential改为Non-Residential。再使拓扑生效即可。(1) 设置Parcels图层可编辑,单击按钮,选中产生拓扑错误的要素,再单击按钮,打开属性表,如图23所示,将Res字段改为Residential。图23 打开属性表(2) 单击Topology工具栏中的按钮,使当前可见图面的拓扑生效,这时可以看到图形窗口中的拓扑错误只剩三个,如图24。按照上述两个步骤,修改其余三个拓扑错误。图24 一次修改后剩余三个拓扑错误7、拓扑编辑 拓扑编辑包括共享结点的移动、共享边线的移动、共享边线变形、共享边线修改和共享多边形生成。在这里介绍共享结点的移动和共享边的变形。(1) 将Parcels设置为可编辑状态,将视图放大到一定比例,单击Topology工具栏中的按钮,选择要进行拓扑编辑的要素,进行移动、修改等操作。如图25所示,选中了一个点并移动这个点。 图25 共享点的移动(2) 在Task下拉窗口中选择Topology Tasks中的Reshape Edges任务,在Target选择目标图层为Parcels。单击按钮,在视图中选中一条边要素,再单击按钮,画一条草图线与所选边两次相交,共享边就会发生变形,如图26所示。 图26 共享边的变形六、步骤小结1、新建一个个人数据库(Personal Geodatabase)2、新建要素类数据集Topology3、定义要素类数据集的坐标系统4、向Topology导入要素类5、为要素类建立子类型6、为要素类数据集建立拓扑关系(在此过程要设定拓扑规则)7、将数据加载到ArcMap8、检测拓扑错误按钮 9、修改拓扑错误10、编辑拓扑关系(共享结点、边线、多边形等)
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号