ArcGIS支持的常用数据类型

来源:互联网 发布:用户画像数据建模算法 编辑:程序博客网 时间:2024/05/16 07:03

ArcGIS应该是目前为止功能最全面和强大的GIS平台软件,支持数据的种类也是比较全面的,下面就分别介绍一下ArcGIS支持的数据格式。

ShapeFile

Shapefile文件是美国环境系统研究所(ESRI)所研制的GIS文件系统格式文件,是工业标准的矢量数据文件。 Shapefile将空间特征表中的非拓扑几何对象和属性信息存储在数据集中,特征表中的几何对象存为以坐标点集表示的图形文件—SHP文件,Shapefile文件并不含拓扑(Topological)数据结构。一个Shape文件包括三个文件:一个主文件(*.shp),一个索引文件(*.shx),和一个dBASE(*.dbf)表。

    主文件是一个直接存取,变长度记录的文件,其中每个记录描述构成一个地理特征(Feature)的所有vertices坐标值。在索引文件中,每条记录包含对应主文件记录距离主文件头开始的偏移量,dBASE表包含SHP文件中每一个Feature的特征属性,表中几何记录和属性数据之间的一一对应关系是基于记录数目的ID。在dBASE文件中的属性记录必须和主文件中的记录顺序是相同的。图形数据和属性数据通过索引号建立一一对应的关系。

    Shapefile中坐标文件(.shp)由固定长度的文件头和接着的变长度空间数据记录组成。文件头由100字节的说明信息组成的(附表 1),主要说明文件的长度、Shape类型、整个Shape图层的范围等等,这些信息构成了空间数据的元数据。在导入空间数据时首先要读入文件头获取Shape文件的基本信息,并以此信息为基础建立相应的元数据表。而变长度空间数据记录是由固定长度的记录头和变长度记录内容组成,其记录结构基本类似,每条记录都有记录头和记录内容组成(空间坐标对)。记录头的内容包括记录号(Record Number)和坐标记录长度(Content Length)两个记录项,Shapefile文件中的记录号都是从1开始的,坐标记录长度是按16位字来衡量的。记录内容包括目标的几何类型(ShapeType)和具体的坐标记录(X,Y),记录内容因要素几何类型的不同,其具体的内容和格式都有所不同。对于具体的记录主要包括空Shape记录,点记录,线记录和多边形记录。

    属性文件(.dbf)用于记录属性信息。它是一个标准的DBF文件,也是由头文件和实体信息两部分构成。其中文件头部分的长度是不定长的,它主要对DBF文件作了一些总体说明(附表 3),其中最主要的是对这个DBF文件的记录项的信息进行了详细的描述(附表 4),比如对每个记录项的名称,数据类型,长度等信息都有具体的说明。属性文件的实体信息部分就是一条条属性记录,每条记录都是由若干个记录项构成,因此只要依次循环读取每条记录就可以了。

    索引文件(.shx)主要包含坐标文件的索引信息,文件中每个记录包含对应的坐标文件记录距离坐标文件的文件头的偏移量。通过索引文件可以很方便地在坐标文件中定位到指定目标地坐标信息。索引文件也是由文件头和实体信息两部分构成的,其中文件头部分是一个长度固定(100 bytes)的记录段,其内容与坐标文件的文件头基本一致。它的实体信息以记录为基本单位,每一条记录包括偏移量(Offset)和记录段长度(Content Length)两个记录项。附表 5给出了具体的描述。

    Shape文件是按照地物类型来组织的。地物类型可以分为简单的分为点(Point)、线(Line)、面(Polygon)三种类型,一个Shape文件中只能包括一种类型的地物,即只能包括点、线或者面状地物中的一种。点状地物存储的是一组坐标(X,Y),线包括简单线和多段线,存储的是一系列的坐标串(X1,Y1,X2,Y2…),面状地物存储的是一系列封闭的坐标串(X1,Y1,X2,Y2, …, X1,Y1)。
    命名习惯所有文件名都符合8.3命名习惯。主文件,索引文件和dBASE文件有相同的前缀。

    详见:ESRI Shapefile Technical Description(http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf

典型的Shape文件结构如下:


File Geodatabase

File Geodabase是ESRI抛开微软Access容量限制自己开发的Personal Geodatabase存储格式,因为Acess只能存储2G。
File Geodatabase 优点如下:
1) 跨平台,可以支持windows ,linux, Solaris
2) FGDB支持所有Geodatabase的特征,包括vector ,raster , terrian、annotation 等等
3) 海量数据支持:每一个数据集支持1TB的数据.原则上取决与存储空间大小(这个优点确实不错,在数据备份和恢复时很有用)。
4) File Geodabase支持数据压缩

File Geodatabase在理论上可以替代原来的Personal Geodatabase,也就是说以前用Personal Geodatabase地方,Esri都建议使用File Geodatabase。File Geodatabase是一个文件夹,里面的文件都是一些二进制文件,在File Geodatabase里面可以建GeoDataset,矢量、栅格,路径分析使用的NetWork、Relation Ship等。如果我们有一些GIS相关的很多种类型的数据存储到本地的话,可以使用File Geodatabase。

前面也说了File Geodatabase是一个文件夹,里面有许多二进制的文件,所以没事的话最好不要手动的修改里面的文件,这样可能导致整个File Geodatabase都坏掉了。

在ArcCatalog中查看File Geodatabase中的结构如下:

在文件系统查看其文件结构图如下:


Personal Geodatabase

我们在File Geodatabase一节中也提到了Personal Geodatabase,该数据库其实是一个Acess数据库,然后ArcGIS使用自己的规则在Acess中建立一些辅助表。我们可以测试,当我们向Personal Geodatabase里面导入一个矢量数据库后,会在Acess里面生成多张表。

当我们新建了Personal Geodatabase后,Acess会为我们建立了一些辅助表,这是ArcGIS针对Personal Geodatabase的一些元数据表,如下图所示:

当我们导入一个矢量数据到该Personal Geodatabase中,在ArcCatalog中看到的数据如下图所示:

在Acess中的截图如下:

SDE

SDE的全称是Spatial Database Engine,翻译过来就是空间数据库引擎。所以我们要明确一点,ArcSDE并不是一种数据库,而是一个空间数据库引擎,目前ArcSDE支持的数据库有Oracle,SqlServer,DB2等,不过目前我们常用的还是ArcSDE for Oracle和ArcSDE for SqlServer。怎么理解ArcSDE是一个空间数据库引擎呢?因为Oracle和SqlServer这些关系数据库本身是不能存储ArcGIS的空间数据的(不过目前也有这些数据库的空间相关的插件,但至少不是直接支持ArcGIS的),所以ArcGIS桌面或者ArcEngine就可以通过哟AreSDE把ArcGIS的空间数据存储到Oracle和SqlServer等关系数据库中,至于怎么存储的,我们其实也不用太关心,如果有兴趣是可以研究一下的,但最好不要直接绕过ArcSDE去修改数据库中值(修改一下简单的属性数据还是可以的)。

一般情况下,我们在安装ArcSDE后,会提示我们做Post操作,Post操作就是我们在关系数据库建立元数据表的过程。post之后,就说明该数据库可以存储ArcGIS的空间数据库了,包括矢量、删除、属性数据等。然后ArcGIS桌面或ArcEngine就可以去连接了。

tif、img

ArcGIS支持几十种栅格数据格式,并且还在不断增加。但Tif和Image数据是ArcGIS支持的最常用的栅格数据,一般我们在坐项目的时候,使用的栅格数据一般还是转换成tif或者通过ArcSDE存储到关系数据库中。

0 0
原创粉丝点击