返回首页

在ArcGIS中为Shapefile属性表增加字段

时间:2012-08-18 16:56来源:知行网www.zhixing123.cn 编辑:麦田守望者

属性描述了要素的相关特性,并存储于表中。在创建新的属性表或是向已有的属性表中增加字段的时候,必须指明数据类型和字段属性,比如精度(Precision)或长度(Length)。数据类型的选择和相关设置会影响存储和显示,并且对后台数据库的精度和效率有十分重要的意义。
在ArcGIS中你可以将要素的属性值存储为七种数据类型之一,即短整型(short integer)、长整型(long integer)、浮点型(float)、双精度(double)、文本型(text)、日期型(date)和大型二进制对象(BLOB)。属性表同样包含预定义字段,保存了数据的几何特性(Shape)和要素ID(FID)。浮点和双精度数据是真实的数值,通常用于测量或计算的连续数据。短整型和长整型数据所反映的数值,通常用于记数或为分类指定一个编码值(coded value)。文本数据也能够存储编码值或者描述要素特征的文本,比如名称。要素时间方面的数据存储为日期型,如阀门的最后检测时间。BLOB能够集成其它的媒体,如视频、影像或声音。下表总结了这些数据类型的信息。
数据类型
描述

浮点型(Float)
1个符号位、7个指数位和24个小数位

双精度(Double)
1个符号位、7个指数位和56个小数位

短整型(Short Integer)
1个符号位、15个二进制位,大约在-32000~32000

长整型(Long Integer)
1个符号位、31个二进制位,大约在-2000000000~2000000000

文本型(Text)
数字字符存储为字节

日期型(Date)
日期值基于标准时间格式存储

BLOB
复杂对象,如影像和视频
 

用ArcMap为表增加一个新字段

在开始编辑shapefile属性表之前,你可以先看看已有字段的数据类型和设置。

1、 启动ArcMap,加载一个要修改的shapefile,在目录表(TOC)中右键单击shapefile文件,从环境菜单中选择Properties。

2、 在Layer Properties对话框中,单击Fields标签。属性表中的每一个字段都列在这里,并且显示了数据类型和特性。单击OK,关闭Layer Properties对话框。

3、 要增加字段,在目录表中单击shapefile,从环境菜单中选择Open Attribute Table。

4、 单击Options按钮,选择Add Field。

5、 在Add Field对话框中,为新字段命名并选择数据类型。在Field Properties中设置相应的字段特性。

6、 单击OK,关闭对话框。


精度(Precision)是一项重要的设置,精度值反映了数据存储的详细程度,并不一定反映它的精确程度。确定实际需要的精度值,因为高的精度需要更多的磁盘空间。Scale指的是小数点右边的数字位数。

在ArcCatalog中创建新的Shapefile

在ArcCatalog的表视图中也可以完成增加字段的工作(方法同上),此处我们讨论一下如何创建新的Shapefile。在创建新的Shapefile时,FID和Shape字段可以自动产生,但你增加的其它字段的数据类型必须自己指定。

1、 启动ArcCatalog,选择一个用来存储新建Shapefile的文件夹(位置)。

2、 从主菜单中选择File > New > Shapefile。在Create New Shapefile对话框中,为shapefile命名,选择要素类型,设定坐标系统。如果要存储M和Z值,选中相应的复选框。完成后单击OK。

3、 右键单击新创建的shapefile,从环境菜单中选择Properties。

4、 在Shapefile Properties对话框中,单击Fields标签。

5、 要创建一个新的字段,只要在第一个有效的空行上单击。在Field Name下输入属性的名称。在Data Type下单击,从下拉列表框中选择合适的数据类型。


6、 一旦选择了数据类型,就可以对字段特性进行设置。设置完字段特性后,但击应用或确定。


在ArcCatalog中可以增加、编辑或删除shapefile属性表的字段。新字段的值通常由表中的其它字段计算得到,或是存储选中要素的值。

用代码增加一个字段

我们可以用ArcMap和ArcCatalog来增加字段,当然也可以用代码来完成这项工作。下面这段代码就可以很容易的增加一个字段。

Public Sub AddField()

Dim pMxdoc As IMxDocument

Set pMxdoc = ThisDocument

 

Dim pFeatureLayer As IFeatureLayer

Set pFeatureLayer = pMxdoc.SelectedLayer

 

Dim pMyField As IFieldEdit

Set pMyField = New Field

With pMyField ‘设置字段属性

.Name = "MyField"

.Type = esriFieldTypeString

.Length = 16

End With

 

Dim pTable As Itable

Set pTable = pFeatureLayer

 

pTable.AddField pMyField

End Sub

为了方便,我们使用了SelectedLayer来获得一个要素图层(当然是shapefile的)。然后再定义一个新的字段,包括了名称、类型和长度,这些都是最基本的设置。定义好字段后我们就需要把它添加到表中。要素类(featureclass)也是一种表(table),只不过是一种特殊的表(包含了空间信息),这一点我们可以从OMD图中很容易看到。因此我们在增加字段的时候使用的是Itable接口。需要注意的一点是,我们在此处并没有使用IFieldsEdit接口,为什么呢?因为我们在这里并不是要创建一个新的表,只是在已有的表中增加一个新的字段而已。

注:ArcObjects(以下简称AO)是ArcGIS Desktop的基石,从上面的例子我们也可以看出,许多在ArcMap或ArcCatalog中的操作都可以用相应的代码来完成,因为ArcMap与ArcCatalog也是使用了相似的代码来完成这些工作的。所以我们在学习AO开发的过程中,首先要学习的就是Desktop的基本操作,你只有熟悉了它的基本操作才能有一个直观的了解,明白对象间的层次关系,知道AO能够做些什么事,这样在你自己写代码的时候才能够做到有的放矢。

 

------分隔线----------------------------
标签(Tag):Arcgis
------分隔线----------------------------
推荐内容
  • 利用会声会影x7制作个性相册视频龙8国际平台入口

    利用会声会影x7,制作个性的电子相册,制作电子相册的视频教程。 操作步骤: 1.在覆叠...

  • 如何利用会声会影婚庆视频制作软件 婚礼就是出众

    现在结婚视频个人拍摄一些就能轻松的制作出自己结婚庆典的视频了,既省钱也能根据自己...

  • 会声会影如何制作电子相册 美好青春纪念册

    由于大学新闻专业的选择,需要学习、掌握些简单的视频剪辑方法,虽然,当时学校教的视...

  • 摄影中正方形构图使用指南

    摄影时采用正方形构图已不是什么新鲜的东西了,正方形构图最早出现可以追溯到胶片时代...

  • Axure Repeater数据删除实现教程

    一、 Repeater控件设置 Repeater控件的设置跟上期完全一样,我们直接用上期的数据即可...

  • Axure Repeater数据输入实现教程

    一、 Repeater控件设置 1、拖放一个Repeater控件到主页上,默认界面如图所示 2、双击R...

  • 猜你感兴趣
  • 教育技术学动态
  • 教育技术学论文
  • 理论研究
  • 应用研究
  • 资源收藏
  • 百家观点
  • 英文文献
  • 中国电化教育
  • 电化教育研究
  • 中国远程教育
  • 开放教育研究
  • 现代教育技术
  • 远程教育杂志
  • 现代远距离教育
  • 中国教育信息化
  • 中国信息技术教育
  • 中小学信息技术
  • Flash龙8国际平台入口
  • Photoshop龙8国际平台入口
  • 3DMAX龙8国际平台入口
  • AutoCAD龙8国际平台入口
  • CorelDRAW龙8国际平台入口
  • Matlab龙8国际平台入口
  • 其他龙8国际平台入口
  • .Net龙8国际平台入口
  • Asp龙8国际平台入口
  • Php龙8国际平台入口
  • Jsp龙8国际平台入口
  • Ajax龙8国际平台入口
  • Android教程
  • 其他龙8国际平台入口
  • Word教程
  • Excel教程
  • PowerPoint教程
  • Ubuntu教程
  • 其他教程
  • 课件下载
  • 软件下载
  • 视频教程下载
  • 其他下载
  • 教案大全
  • 试题大全
  • 课件大全
  • 其他大全
  • 人像摄影
  • 风光摄影