ArcGIS线转面的方法
ArcGIS作为GIS软件中的龙头老大,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功能:线转面。
ArcGIS在进行大范围的矢量化时一般很少直接画多边形,这是因为shape文件不具备拓扑,在处理多个相邻多边形时不方便,因此,一般是先用线把地类图斑勾绘出来,然后将线转为多边形。在ArcGIS中,将线转为多边形有三种方法:
1. Feature to Polygon
这种方法,顾名思义,就是要素转多边形。在ArcToolBox中,依次找到Data Management Tools—>Features—>Feature to Polygon,在弹出的对话框中设置好线要素文件以及生成的多边形存储的位置和文件名,点击确定即可。多边形生成结束后会自动添加到ArcGIS的TOC窗口中。

图一 Feature to Polygon位置
2. Polygon Feature Class from Lines
首先说明,这种方法需要ArcGIS Geodatabase的支持,也就是你的shape数据需要放在ArcGIS的Geodatabase中,Personal Geodatabase或File Geodatabase都可。在存储线要素的要素数据集(Feature Dataset)中,在空白地区右击,选择New—>Polygon Feature Class from Lines…,在弹出的窗口中输入生成面要素的名称,选择要生成面要素的线要素,往下看我们惊喜的发现了"Select a point feature class to establish attributes for the polygon feature"这句话,这就意味着在这里我们可以指定一个点要素文件,来建立面要素的属性。为什么说是惊喜呢?因为在矢量化的死后,很大一部分工作都是来为图斑赋属性(比如说土地利用类型),有了这个功能,我们在用线勾绘图斑时,可以新建一个点文件,每个图斑中画一个点,为其附上图斑应该赋的属性,这样在先转为多边形时就可以利用这个功能将点的属性直接赋予多边形,省却了我们大量的时间。

图二 Polygon Feature Class from Lines位置
3. Construct Features
这个还是首先要说明一下,实现这种方法,除了需要方法2中Geodatabase的支持外,还需要ArcGIS Topology模块(ArcGIS拓扑模块)的支持,方法是这样的:新建一个面要素文件,用来存储生成的多边形。将线要素和面要素同时添加到ArcGIS的TOC窗口中,在Editor工具条上点击Start Editing开始编辑,在Topology工具条上点击Map Topology(地图拓扑)按钮,在打开的对话框中将需要建立多边形的线要素选中,然后关闭对话框。在Editor工具条上将Target(编辑目标)设为新建的面文件,然后选择相应的线要素(注意:选中的这些线要素要能形成闭合的多边形才可以),这时Topology工具条上的Construct Features按钮变为可用,点击该按钮,弹出Construct Features对话框,在其中设置容差及其它选项,点击OK即可生成多边形。

图三 Constrct Features
比较3这种方法,第一种方法是最差的,因为其只能一次将所有的线全部转成多边形,且不能同时赋属性;第二种方法笔者个人认为是最好的,除了可以将线转为面,还可以同时将点的属性赋给面图斑;第三种方法笔者认为也不错,很灵活,想创建哪个多边形就创建哪个多边形,创建多边形后可以同时给它赋属性。
ArcGIS线转面的方法的更多相关文章
- 【转】ArcGIS 创建切片缓存方法工具总结
ArcGIS 创建切片缓存方法工具总结 http://wenku.baidu.com/link?url=Bm8AkmcJBzfiyat9N_Me6vlfSHEDCC_D1qBk5IB4X4CIDeKI ...
- 多线程之join方法
join方法的功能就是使异步执行的线程变成同步执行.也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用join方 ...
- VS2012中丢失ArcGIS模板的解决方法
VS2012中丢失ArcGIS模板的解决方法 由于ArcGIS10.0(for .NET)默认是用VS2010作为开发工具的,所以在先安装VS2012后装ArcGIS10.0 桌面版及ArcObjec ...
- JS关闭当前页面的方法
JS关闭当前页面的方法 一.不带任何提示关闭窗口的js代码 1 <a href="javascript:window.opener=null;window.open('','_self ...
- CubieBoard开发板不用ttl线也不用hdmi线的安装方法
本文重点在于CubieBoard开发板系统的初始化安装,并且不用ttl和hdmi线,开机就可以远程ssh进系统.本文适合没有配线的同学参考操作.事实上,无论有没有ttl线,按照本文的方法安装效率都是一 ...
- ArcGIS学习记录—Arcgis中点、线、面的相互转换方法
本文使用的工具在Arctoolbox.Data Management Tools.Features (一)面--面转线.面转点 面转线 Polygon To Line .Feature To Lin ...
- jQuery 表格中实现“删除线”的增进方法
之前做了一个删除线的效果,就是类似这样的,在内容的中间加一条线. 但是又有点不同的是,这种删除线不是单纯的在文字之上,而是给一个Table中的一行加上这种删除线效果. 这里有两个方法,是在不同时期写的 ...
- 获取Linux进程运行在哪个CPU内核上面的方法
首先,当某些时候,在一段程序或者借助第三方软件进行程序协助的时候,在性能的优化,以及程序bug的排除上面,可能会想知道该程序执行的进程被调度到了哪一个CPU内核进行工作,从而可以推断是否是受限于硬件还 ...
- [转]ps/2键盘线序识别方法
from: http://www.360doc.com/content/11/0816/19/844619_140875056.shtml 经常看到有人询问ps/2线坏了,更换的时候如何测线序连线,或 ...
随机推荐
- NSURLCache详解和使用
使用缓存的目的是为了使应用程序能更快速的响应用户输入,是程序高效的运行.有时候我们需要将远程web服务器获取的数据缓存起来,以空间换取时间,减少对同一个url多次请求,减轻服务器的压力,优化客户端网络 ...
- allegro - 层叠相关参数
层叠结构设置 弹出Layout Cross Section对话框 Subclass Name一列是该层的名称,可以按照自己的需要来填写.Type 列选择该层的类型,有三种: ·CONDUCTOR: ...
- android xml特殊字符
@ 对应 @ : 对应 : 对应 空格 对应 空格 ! 对应 ! " 对应 " # 对应 # $ 对应 $ % 对应 % & 对应 & ' 对应 ´ ( 对应 ...
- C# 文件操作 把文件读取到字节数组
string zipfile = "c:\\a.zip"; //方法1 FileStream fs = new FileStream(zipfile, FileMode.Open) ...
- delphi7 在虚拟机 vbox里面安装失败
提示Error 1324.The path My Pictures contains an invalid character. 解决办法:新建一个文件夹,123, 设置 我的文档文件夹 目录指向 “ ...
- MySQL基础(三)
数据插入 INSERT是用来插入行到数据库表的 ## 给出插入数据的字段名称,使得数据插入不依赖表中列名称的定义顺序 INSERT INTO customers(cust_name,cust_addr ...
- cmd运行的程序的工作目录
如图所示,cmd通过输入自己编写的程序的实际路径,或者将程序放在环境变量中然后在cmd中执行,用start执行,该程序运行时的工作目录都是cmd当前所在目录:在cmd中输入该程序的快捷方式执行该程序, ...
- .net stream
流的抽象基类Stream:Stream 是所有流的抽象基类.流是字节序列的抽象概念,例如文件.输入/输出设备.内部进程通信管道或者 TCP/IP 套接字.Stream 类及其派生类提供这些不同类型的输 ...
- IOS中无缓存的图片载入
在IOS中,我们常用[UIImage imageNamed]方法获取图像,这种方法简便,容易理解.但是有个缺点,就是有缓存.这种方式 传人的图像的就是通过文件名方式文件名.如果,我们内存有限,我们就必 ...
- 使用cookie实现打印浏览记录的功能
可以用cookie知识来实现打印浏览记录.这里面用到的思路是将浏览记录以字符串的方式保存到cookie中,当浏览记录增加时,再将其转化为数组. $uri=$_SERVER['REQUEST_URI'] ...