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线转面的方法的更多相关文章

  1. 【转】ArcGIS 创建切片缓存方法工具总结

    ArcGIS 创建切片缓存方法工具总结 http://wenku.baidu.com/link?url=Bm8AkmcJBzfiyat9N_Me6vlfSHEDCC_D1qBk5IB4X4CIDeKI ...

  2. 多线程之join方法

    join方法的功能就是使异步执行的线程变成同步执行.也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用join方 ...

  3. VS2012中丢失ArcGIS模板的解决方法

    VS2012中丢失ArcGIS模板的解决方法 由于ArcGIS10.0(for .NET)默认是用VS2010作为开发工具的,所以在先安装VS2012后装ArcGIS10.0 桌面版及ArcObjec ...

  4. JS关闭当前页面的方法

    JS关闭当前页面的方法 一.不带任何提示关闭窗口的js代码 1 <a href="javascript:window.opener=null;window.open('','_self ...

  5. CubieBoard开发板不用ttl线也不用hdmi线的安装方法

    本文重点在于CubieBoard开发板系统的初始化安装,并且不用ttl和hdmi线,开机就可以远程ssh进系统.本文适合没有配线的同学参考操作.事实上,无论有没有ttl线,按照本文的方法安装效率都是一 ...

  6. ArcGIS学习记录—Arcgis中点、线、面的相互转换方法

    本文使用的工具在Arctoolbox.Data Management Tools.Features (一)面--面转线.面转点 面转线  Polygon To Line .Feature To Lin ...

  7. jQuery 表格中实现“删除线”的增进方法

    之前做了一个删除线的效果,就是类似这样的,在内容的中间加一条线. 但是又有点不同的是,这种删除线不是单纯的在文字之上,而是给一个Table中的一行加上这种删除线效果. 这里有两个方法,是在不同时期写的 ...

  8. 获取Linux进程运行在哪个CPU内核上面的方法

    首先,当某些时候,在一段程序或者借助第三方软件进行程序协助的时候,在性能的优化,以及程序bug的排除上面,可能会想知道该程序执行的进程被调度到了哪一个CPU内核进行工作,从而可以推断是否是受限于硬件还 ...

  9. [转]ps/2键盘线序识别方法

    from: http://www.360doc.com/content/11/0816/19/844619_140875056.shtml 经常看到有人询问ps/2线坏了,更换的时候如何测线序连线,或 ...

随机推荐

  1. Java BigDecimal

    1构造函数(主要测试参数类型为double和String的两个常用构造函数) BigDecimal aDouble =new BigDecimal(1.22); System.out.println( ...

  2. 【转】mysql存储引擎

    http://www.cnblogs.com/kevingrace/p/5685355.html Mysql有两种存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比   MyISAM In ...

  3. [转]CryptographyHelper.cs

    using System; using System.IO; using System.Security.Cryptography; using System.Text; public class C ...

  4. C#读取Excel的三种方式以及比较

    (1)OleDB方式 优点:将Excel直接当做数据源处理,通过SQL直接读取内容,读取速度较快. 缺点:读取数据方式不够灵活,无法直接读取某一个单元格,只有将整个Sheet页读取出来后(结果为Dat ...

  5. 非root Android设备上Tcpdump的实现

    通常我们在Android应用中执行某个命令时会使用"Runtime.getRuntime().exec("命令路径")"这种方式,但是当我们执行抓包操作时,使用 ...

  6. [Note] changing building platform from vs 2013 to vs community 2015

    The error turned out as "undefined linkage"(The same as you haven't use some function that ...

  7. PoEduo - C++阶段班【Po学校】-Lesson03-5_运算符重载- 第7天

    PoEduo - Lesson03-5_运算符重载- 第7天 复习前面的知识点 空类会自动生成哪些默认函数 6个默认函数    1  构造  2  析构   3  赋值  4 拷贝构造  5 oper ...

  8. Windows下的UDP爆了10054--远程主机强迫关闭了一个现有的连接

    原文地址:http://www.cnblogs.com/pasoraku/p/5612105.html 故事是这样的. 前几天在网上逛,看到了一个漂亮的坦克模型. 我觉得这个坦克可以做一个游戏,那需要 ...

  9. C#语言基础— 输入与输出

    C#语言基础— 输入与输出 1.1函数的四要素:名称.输入.输出.加工 1.2主函数:输出语句.输入语句: Static viod Main(string[] stgs)//下划线部分可以自己指定 { ...

  10. UIScrollView的三个属性

    contentSize.contentOffset.contentInset   UIScrollView的frame的size 指的是可视范围   contentSize  内容大小,滚动的范围 创 ...