要素类基础知识

要素类是具有相同空间制图表达(如点、线或多边形)和一组通用属性列的常用要素的同类集合,例如,表示道路中心线的线要素类。地理数据库中最常用的四个要素类分别是点、线、多边形和注记(地图文本的地理数据库名称)。

在下图中,使用它们来表示同一个区域的四个数据集:(1) 以点形式存在的检修孔盖、(2) 下水道管线、(3) 宗地多边形和 (4) 街道名注记。

地理数据库中最常用的四个要素类

在此图中,您也可能已对潜在需求进行了标注,以便对某些高级要素属性建模。例如,下水道管线和检修孔盖位置构成了一个雨水下水道网络,您可以使用该系统来对径流和流量建模。此外,还应注意相邻宗地如何共用公共边界。大多数宗地用户都希望使用拓扑来维护共享要素边界在数据集中的完整性。

如前文所述,用户通常需要在地理数据集中对此类空间关系和行为进行建模。在此种情况下,用户将通过添加多个高级地理数据库元素(如拓扑、网络数据集、terrain 和地址定位器)来扩展这些基本要素类。

扩展要素类中,可了解有关向地理数据库添加此类高级行为的详细信息。

地理数据库中要素类的类型

矢量要素(带有矢量几何的地理对象)是一种常用的地理数据类型,其用途广泛,非常适合表示带有离散边界的要素(例如,井、街道、河流、州和宗地)。要素只是一个对象,可将其地理制图表达(通常为点、线或多边形)存储为行中的其中一个属性(或字段)。在 ArcGIS 中,要素类是数据库表中存储有公共空间制图表达和属性集的要素的同类集合,例如,线要素类用于表示道路中心线。

注意注意:

在地理数据库中创建要素类时,将要求您设置要素的类型以定义要素类的类型(点、线、多边形等)。

通常,要素类是点、线或多边形的专题集合,不过,存在七种要素类类型:

要素几何和要素坐标

要素类包含各要素的几何形状和描述性属性。各要素几何主要由各自的要素类型(点、线或多边形)定义。但是,也可定义其他几何属性。例如,要素可以是单部分或多部分 (multipart)、具有 3D 折点、具有线性测量值(称为 m 值)以及包含通过参数定义的曲线。本部分对这些功能进行了简要概述。

单部分线和多部分 (multipart) 线以及多边形

地理数据库中的线要素类和多边形要素类可由单部分或多部分构成。例如,一个州可包含多个部分(夏威夷群岛),但被视为一个州要素。

地理数据库线和多边形可以是单部分或多部分 (Multi-Part)。

折点、线段、高程和测量值

要素几何主要由坐标折点构成。线和多边形要素中的线段跨越折点。线段可以是笔直的边,也可以是通过参数定义的曲线。要素中的折点还可包含 z 值来表示高程测量值,包含 m 值来表示沿线要素的测量结果。

地理数据库中的要素几何由坐标和线段进行定义。

线和多边形要素中的线段类型

通过以下两个关键元素定义线和多边形:(1) 用于定义线或多边形形状的有序的折点列表和 (2) 在每对折点之间使用的线段的类型。可将每个线和多边形视为一个有序的折点集(可将其彼此相连以形成一个几何形状)。表达各线和多边形的另一种方法是将其视为相连线段的有序系列,其中各线段的类型为:直线、圆弧、椭圆弧或贝塞尔曲线。

宗地要素边界通常同时包含直线和曲线段。

默认线段类型为两个折点之间的直线。但是,当您需要定义曲线或参数形状时,可定义三个附加线段类型:圆弧、椭圆弧和贝塞尔曲线。这些形状通常用于表示宗地边界和道路等建筑环境。

使用 z 值的垂直测量结果

要素坐标可包括 x,y 和 x,y,z 折点。Z 值最常用于表示高程,但也可表示其他测量结果,如年降雨量或空气质量。

要素可在各自的折点 (x,y,z) 中包含高程测量值。

要素可具有 x,y 坐标,也可具有添加的 z 高程值。

使用 m 值的线性测量结果

线状要素折点也可包括 m 值。某些 GIS 应用程序使用用于沿线状要素(例如沿道路、河流和管线)内插距离的线性测量系统。可为要素中的每个折点分配 m 值。一个常用的示例是运输部门所使用的公路里程标志测量系统,用于沿公路记录路面状况、速度限制、事故位置以及其他事故点。两个常用测量单位是:距设定位置的里程标志距离(例如,表示县的线)和距参考标记的距离。

线性参考的坐标系包括 M 值 - (x,y,m) 或 (x,y,z,m)

测量折点可为 (x,y,m) 或 (x,y,z,m)。

对这些数据类型的支持通常称为线性参考。对沿着这些测量系统发生的事件进行地理定位的过程称为动态分段

测得的坐标形成这些系统的基本结构单元。在 ArcGIS 的线性参考实现中,术语路径 是指具有唯一标识符和通用测量系统的任意线状要素(如城市街道、公路、河流或管线)。可基于线要素类构建使用通用测量系统的路径集合,如下所示:

包含带有“已测量”坐标的路径且每个要素都有一个路径标识符的线要素类

有关详细信息,请参阅线性参考概述

要素容差

在 GIS 数据管理中,位置准确性以及对高精度数据管理框架的支持至关重要。能够足够精确地存储坐标信息成为关键要求。坐标精度用于描述记录位置时使用的位数。它定义采集和管理空间数据时所用的分辨率。

由于地理数据库能够记录高精度坐标,因此当数据采集工具和传感器随着时间的推移不断改进时,用户可构建具有高精度等级和较高分辨率的数据集(来自测量和土木工程的数据输入、地籍和 COGO 数据采集、增大的影像分辨率、激光雷达,以及根据 CAD 构建方案等)。

地理数据库使用整数记录坐标,并可处理较高精度的位置。在各种 ArcGIS 操作中,使用某些关键几何属性处理和管理地理数据库的要素坐标。这些属性是在创建各要素类或要素数据集的过程中定义的。

以下几何属性可帮助定义在各种空间处理和几何操作中使用的坐标分辨率和处理容差:

X,y 分辨率

要素类或要素数据集的 x,y 分辨率是用于存储 x,y 坐标值的数值精度。精度对于进行准确的要素制图表达、分析和映射十分重要。

x,y 分辨率定义用于存储要素坐标的小数位数或有效数字位数(以 x 和 y 为单位)。可将分辨率视为定义一个在其上捕捉所有坐标的非常精细的格网网格。在 ArcGIS 中,坐标值实际上是以整数形式进行存储和运算。因此,有时将此格网网格称作整型格网坐标格网

分辨率用于定义可放置所有坐标的坐标格网中的两个网格之间的距离。以数据的单位(根据数据的坐标系)表示 x,y 分辨率,例如,以美国国家平面英尺、UTM 米或亚尔勃斯米为单位。

在 ArcGIS 9.2 或更高版本中创建的要素类的默认 x,y 分辨率为 0.0001 米,或者以数据集坐标系单位进行计算的等效值。例如,如果要素类以美国国家平面英尺为单位进行存储,则默认精度为 0.0003281 英尺(0.003937 英寸)。如果坐标以经纬度表示,则默认的 x,y 分辨率为 0.000000001 度。

下图提供了在其上将所有坐标值捕捉到格网网格的坐标格网的概念视图。格网覆盖了各数据集的范围。此网格的细度(格网中线与线之间的距离)是由非常小的 x,y 分辨率定义。

XY 分辨率用于定义将所有坐标捕捉到的格网网格的细度。默认值等于 0.0001 M。

必要时,可覆盖默认的 x,y 分辨率值,并为每个要素类或要素数据集设置其他值。与使用较大 x,y 分辨率值的数据集相比,设置较小 x,y 分辨率值可能会增加数据集的数据存储量和处理时间。

X,y 容差

创建新要素类时,系统将要求您设置 x,y 容差。在拓扑验证、缓冲区生成、面叠加等聚类操作以及一些编辑操作中,使用 x,y 容差来设置两个坐标之间的最小距离。

用于在这些操作过程中确定所有要素坐标(结点和折点)间最小距离的 x,y 容差,会影响要素处理操作。按照定义,x,y 容差还定义了坐标在聚类过程中可于 x 或 y(或两者)方向上移动的距离。

x,y 容差是一个极小的距离值(默认值为 0.001 米,以地面上单位为单位)。它用于在聚类操作过程中解决坐标交叉点位置不精确的问题。使用几何操作处理要素类时,如果两个坐标的 x 距离和 y 距离位于彼此的 x,y 容差范围内,这两个坐标会被视为重合(也就是说,共享同一个 x,y 位置)。因此,聚类坐标会被移动到某个公共位置。

xy 容差用于匹配重合的坐标(处于彼此的容差范围内)。

通常,将精度较低的坐标移动到精度较高的坐标位置,或按照聚类中各坐标间的加权平均距离计算一个新位置。在此种情况下,加权平均距离基于聚类坐标的精度等级。

有关如何为每个要素类设置精度等级的详细信息,请参阅 ArcGIS 中的拓扑

聚类过程的工作原理为在地图上移动并识别处于彼此 x,y 容差范围内的坐标聚类。ArcGIS 使用此算法来查找、清除和管理要素间的共享几何。这意味着坐标被视为重合(捕捉到同一个共享坐标位置)。这对许多 GIS 操作和概念都非常重要。有关示例,请参阅 ArcGIS 中的拓扑概述

在此类操作期间,坐标移动到新位置可以经过的最大距离是 2 的平方根乘以 x,y 容差。由于聚类算法是迭代算法,因此坐标位置的平移距离有时会大于此距离。

默认 x,y 容差设置为 0.001 米,或以数据集的实际坐标系单位表示的等效值(也就是说,地面上的 0.001 米)。例如,如果坐标系以美国国家平面英尺记录,则默认 x,y 容差是 0.003281 英尺(0.03937 英寸)。

XY 容差是分辨率的 10 倍。

默认 x,y 容差值是默认 x,y 分辨率的 10 倍,且在大多数情况下均建议使用此设置。对于坐标精度较低的数据,可选择设置一个较大的容差值;而对于精度要求极高的数据,可设置一个较小的容差值。

需要注意的是,x,y 容差并非用于概化几何形状。恰恰相反,它用于在拓扑操作过程中整合线作业和边界。即对位于彼此之间极小距离范围内的坐标进行整合。由于坐标在 x 和 y 方向上可移动与 x,y 容差相同的距离,因此凭借使用 x,y 容差的命令来处理数据集,可以解决许多潜在问题。这包括极小的过伸或未及的处理、重复线段的自动分离删除以及沿边界线的坐标细化。

以下是一些有用提示:

  • 通常,使用 10 倍于 x,y 分辨率的 x,y 容差,即可获得非常好的结果。
  • 为了使坐标移动距离较小,也应使 X,Y 容差较小。但是,过小的 x,y 容差(例如 x,y 分辨率的 3 倍或更小)可能无法正确整合重叠边界和坐标的线作业。
  • 相反,如果 x,y 容差过大,要素坐标可能彼此重叠。这会影响要素边界制图表达的精度。
  • x,y 容差不应接近于数据采集分辨率。例如,地图比例为 1:12,000 时,1 英寸等于 1,000 英尺,1 英寸的 1/50 等于 20 英尺。在使用这些数字的情况下,您会希望通过 x,y 容差进行的坐标移动保持正常。请记住,在这种情况下,默认 x,y 容差将为 0.0003281 英尺,这是个十分合理的默认 x,y 容差值;实际上,除了极端情况之外,在其他所有情况下使用默认 x,y 容差值是最佳选择。
  • 在拓扑中,可设置每个要素类的坐标等级。您会希望将最精确要素(如测量所得的要素)的坐标等级设置为 1,将精度较低要素的坐标等级设置为 2、3 等等(按精度等级降序)。这将使等级数较高(因此坐标精度较低)的其他要素坐标被调整为等级数较低而精度较高的要素。

地理数据库中的要素类存储

在地理数据库中,每个要素类在单独的表中进行管理。各行的“形状”列用于保存各要素的几何或形状。

要素类以具有形状列的表的形式存储在地理数据库中。

在要素类表中,以下表述均为真:

在 ArcSDE 地理数据库中,关系数据库将每个要素类以表的形式保存在 DBMS 中。有四个 DBMS(Oracle、DB2、Informix 和 PostgreSQL)支持使用 SQL 访问地理数据库中的要素几何。

扩展要素类

地理数据库中的每个要素类都是一个具有相同几何类型(例如,点、线或多边形)、相同属性和同一空间参考的地理要素的集合。可根据需要对要素类进行扩展以实现多个目标。以下是用户使用地理数据库扩展要素类的一些方法和原因。

使用地理数据库中的要素类

使用

要实现的目的

要素数据集

保存空间相关要素类的集合或构建拓扑、网络、地籍数据集和 terrain。

子类型

在一个要素类中管理一组要素子类。要素类表经常使用此子类型来管理同一要素类型子集上的不同行为。

属性域

为属性列指定有效值列表或有效值范围。使用域帮助确保属性值的完整性。域经常用来强制执行数据分类(例如道路类、分区代码和土地使用分类)。

关系类

使用公用键在要素类和其他表之间构建关系。例如,基于在要素类中选择的行查找另一个表中相关联的行。

拓扑

对要素共享几何的方式进行建模。例如,相邻的县共用公共边界。另外,县的多边形完全覆盖和嵌套在州中。

网络数据集

对交通连通性和流量进行建模。必须已安装 ArcGIS Desktop 的 Network Analyst 扩展模块。

几何网络

对公共事业网络和追踪进行建模。

Terrain 数据集

对不规则三角网 (TIN) 进行建模,并管理非常大的激光雷达和声纳点集合。必须已安装 ArcGIS Desktop 的 3D Analyst 扩展模块

地址定位器

地理编码地址。

宗地结构

在地理数据库中,将用于细分的测量信息和宗地方案作为连续宗地结构数据模型的一部分进行整合和维护。此外,也可通过输入新分割图和宗地描述来逐渐提高宗地结构的精度。

线性参考

使用测量结果沿线状要素定位事件

制图表达

管理多个制图表达和高级制图绘制规则。

版本管理

通过管理多个关键的 GIS 工作流来实现数据管理;例如,支持长期更新事务、历史存档和多用户编辑。这需要使用 ArcSDE 地理数据库

使用地理数据库中的要素类

3/7/2012