“创建渔网”的工作原理

创建渔网工具可创建包含由矩形像元所组成网络的要素类。创建渔网需要三组基本信息:渔网的空间范围、行数和列数以及旋转的角度。可通过多种方法指定这些信息。例如,您可能不确定准确的行数和列数,但却清楚每个矩形像元必须正好为 110 米乘 63 米,并且必须覆盖另一要素类的空间范围。

此工具共包含 11 个参数,您最好将这些参数分成不同的四组:

  • 渔网的空间范围
  • 渔网的行数与列数以及各像元的高度与宽度
  • 渔网的旋转角度
  • 定义输出要素类名称和类型(面或线)的参数以及包含各像元质心的可选点数据集

注:

这些参数在该工具对话框中的顺序与在 Python 语法中的顺序并不相同。

设置空间范围的方法

您可以通过以下任意一种方法设置渔网的范围:

  • 模板范围参数中输入现有数据集。此数据集的范围将用作渔网的范围。
  • 如果未在模板范围参数中输入现有数据集,则可提供最小 x、y 坐标与最大 x、y 坐标。
  • 使用渔网原点坐标渔网的右上角参数输入渔网原点和右上角的坐标。
  • 渔网原点坐标像元宽度像元高度行数列数参数中分别输入原点坐标、像元大小以及行数与列数。

设置行数和列数

如果您已通过上述前三种方法之一设置了渔网的范围,则接下来需要设置行数与列数。指定行数和列数的方法共有四种:

  • 通过像元宽度像元高度参数定义像元的宽度和高度,然后将行数列数参数留空或设置为 0。工具运行时,将计算出覆盖渔网范围所需的行数和列数。
  • 如上所述定义像元的宽度和高度,但另外还需要输入行数和列数。
  • 通过设置行数列数参数定义行数和列数,然后将像元宽度像元高度参数留空或设置为 0。此工具运行时,将根据行数和列数以及渔网的右上角参数的值计算出像元的宽度和高度。
  • 如上所述定义行数和列数,但另外还需要输入像元大小和宽度。如果使用此方法,则参数渔网的右上角将被忽略(在本工具对话框中,此参数呈不可用状态)。此工具运行时会计算出右上角的坐标。

旋转角度

这是 Y 轴与连接渔网原点坐标Y 轴坐标点的线之间的角度。

要创建经旋转的渔网,请指定 Y 轴坐标来定义旋转角度,从而使原点至此点的线与正北方向形成所需的角度,如下图所示。有关详细信息,请参阅下方的计算 y 轴坐标的值部分。

确定渔网的旋转

下方示例显示出按照以下参数值构成的旋转后渔网:

  • 渔网原点坐标 = (0, 0)
  • 渔网的右上角 = (6.9, 4)
  • 行数 = 3
  • 列数 = 4
  • Y 轴坐标 = (6.9, 4)

执行创建渔网时,首先会构造一个未经过旋转的渔网,如下图所示。

创建像元

下一步是绕原点将渔网顺时针旋转 60 度,获得最终的渔网。

渔网最终位置

计算 y 轴坐标的值

如果您知晓旋转角度,便可按照以下方法计算出 Y 轴坐标参数的值:

假设渔网要被顺时针旋转 60 度。从渔网的原点出发画一条与垂直轴顺时针成 60 度的线(如下图所示)。这条线上的任意一点都可作为 Y 轴坐标参数的值。为 y 坐标选取一个合适的值,然后根据关系式计算出 x 坐标(假设原点位于 0, 0):

角的正切 = x 坐标/y 坐标

渔网 Y 轴坐标点计算

例如,角度为 60 度。如果 y 坐标值为 10,则 x 坐标值将为 17.32。

x-coordinate = tan(60) * 10

输出要素类

可以选择是创建线要素类还是创建面要素类。如果要通过叠加工具集中的工具将渔网与现有数据集叠加,则选择作为几何类型参数。如果渔网仅作显示之用,则选择折线作为几何类型参数。如果存在大量渔网单元,则通过创建渔网将比通过折线创建渔网慢得多。

您也可以通过选中创建标注点参数来创建点要素类。这些点将位于各像元的中心。如果只想获得点输出而不需要其他输出,则选择折线作为几何类型参数(因为这是构造渔网最快的方法),然后选中创建标注点参数。此工具执行完成后,请删除输出线要素类。