派生新位置用于根据一个或多个属性或空间查询创建新要素。
工作流示意图
术语
术语 | 描述 |
---|---|
空间查询 | 空间关系查询。 |
属性查询 | 字段值查询。 |
示例
房地产开发公司正在寻找适合综合性开发的区域。该开发区将位于具有大量 20 至 30 岁的年轻人且便于乘坐城市轻轨系统的区域。派生新位置将用于在划定为综合性开发区域并符合选择条件的城市范围内创建新要素。
用法说明
输入图层在表达式内确定,而非作为输入参数。
可通过添加表达式来构建查询。可添加多个表达式,包括空间和属性查询的组合。输入图层中满足表达式的要素或要素部分将被写入结果图层。
存在多种可用于属性查询的运算符,具体取决于您所查询的字段是分类字段还是数字字段。
如果字段为分类字段,则可以使用以下运算符:
- 等于
- 不等于
- 开头是
- 结尾是
- 包含
- 不包含
- 为空
- 不为空
如果字段为数字字段,则可以使用以下运算符:
- 等于
- 不等于
- 最小为
- 小于
- 最大为
- 大于
- 介于
- 不介于
- 为空
- 不为空
有关构建属性表达式的详细信息,请参阅派生新位置的工作原理部分。
可以在空间查询中使用以下空间表达式:
- 相交
- 不相交
- 某一距离范围内
- 不在某一距离范围内
- 完全包含
- 不完全包含
- 完全位于
- 不完全位于
有关构建空间表达式的详细信息,请参阅派生新位置的工作原理部分。
可使用添加表达式按钮将多个表达式添加至查询。可使用 and 或 or 作为运算符来组合表达式。
如果选中使用当前地图范围,则仅对当前地图范围中可见的要素进行分析。 如果未选中,则将对所有要素进行分析,包括超出当前地图范围的要素。
派生新位置的工作原理
构建表达式
要构建表达式,请单击添加表达式按钮打开添加表达式对话框。
属性表达式
使用位置(属性查询)作为表达式类型来创建属性表达式。
编号 | 描述 |
---|---|
此处列出了可在表达式中使用的图层。将提供内容列表中的所有图层。 | |
这是表达式类型。对于属性表达式,请选择位置(属性查询)。 | |
从列表中选择要查询的字段。 | |
为表达式选择运算符。 | |
|
注:
如果任意图层应用了过滤器,则只有满足过滤表达式的要素才会应用到分析中。
空间表达式
空间表达式是通过选择诸如完全位于或相交等表达式类型(完整的列表可在空间表达式类型部分中找到)创建的。
在选择空间表达式类型时,添加表达式对话框会根据您选择的表达式类型而有所改变。
编号 | 描述 |
---|---|
第一个图层。 | |
空间表达式类型。有关每种空间表达式类型的详细信息,请参阅下文。 | |
第二个图层。这些是地图中的其他图层。 |
已完成查询示例
本示例旨在基于一系列条件派生新的区域作为美洲狮的主要栖息地。美洲狮的主要栖息地条件包含:
- 美洲狮偏爱陡峭地形。
- 地形必须覆盖有森林。
- 该位置必须距离溪流 2,500 英尺以内。
- 该位置必须距离高速公路 2,500 英尺以外。
以下屏幕截图演示了如何使用名为 Vegetation、Slope、Streams 和 Highways 的图层基于以上条件进行派生新位置查询:
注:
- 表达式顺序会影响分析结果。
- 可通过单击分组与取消分组按钮 对表达式进行分组与取消分组。要创建分组,请选择两个或两个以上表达式,然后单击分组按钮。有关分组的详细信息,请参阅分组部分。
- 单击 可以将运算符切换为 。单击 可以将运算符切换为 。
空间表达式类型
空间表达式可在两个图层之间建立关系。如果需要在同一图层的要素之间建立空间关系(例如,希望选择在工业用宗地某一距离范围内的闲置宗地),请复制宗地图层并将其添加到您的地图中,这样您便拥有两个使用同一宗地要素的图层。
在某一距离范围内/不在某一距离范围内
在某一距离范围内的关系使用第一个图层中要素与第二个图层中要素之间的直线距离。
- 在某一距离范围内 - 在第二个图层要素指定距离范围内的第一个图层要素部分中派生新要素,例如,只有距离河流 100 米范围内的部分宗地才包括在输出之内。
- 不在某一距离范围内 - 不在第二个图层要素指定距离范围内的第一个图层要素部分中派生新要素,例如,位于河流 100 米距离范围内的宗地将不会包括到输出中。您可将此关系视为“距离大于”。
注:
计算的距离为要素最近部分之间的距离。在以上示例中,植被需在距溪流 2,500 英尺的范围之内,将为 2,500 英尺范围之内的植被部分图层创建新区域。
完全包含/不完全包含
如果第一个图层中的要素能够完全包围第二个图层中的要素,则第一个图层中的要素通过该测试。被包含的要素不得有任何部分位于包含要素之外;但允许被包含要素与包含要素相接触(即,沿边界共享公共点)。
- 完全包含 - 如果第一个图层中的要素包含第二个图层中的要素,则会将第一个图层中的要素包括到输出中。
- 不完全包含 - 如果第一个图层中的要素包含第二个图层中的要素,则不会将第一个图层中的要素包括到输出中。
注:
可将此包含关系用于点和线。例如,您拥有街道中心线(线)图层和检修孔盖(点)图层,且您希望查找包含检修孔盖的街道。可以使用完全包含来查找包含检修孔盖的街道,但为了使线能够包含点,点必须正好位于该线上(即,在 GIS 术语中,它们互相捕捉)。如果对此存在任何疑问,请在某一距离范围内关系中使用适当的距离值。
完全位于/不完全位于
如果第一个图层中的要素能够被第二个图层中的要素完全包围,则第一个图层中的要素通过该测试。第一个图层中的整个要素都必须位于包含要素之内;但允许这两个要素相接触(即,沿边界共享公共点)。
- 完全位于 - 如果第一个图层中的要素完全位于第二个图层的要素中,则会将第一个图层中的要素包括在输出中。
- 不完全位于 - 如果第一个图层中的要素完全位于第二个图层的要素中,则不会将第一个图层中的要素包括在输出中。
注:
和包含关系一样,此范围内关系也可用于点和线。例如,您的第一个图层中包含表示检修孔盖的点,且您希望查找位于街道中心线上的检修孔(相对于停车场或其他非街道要素)。可以使用完全位于来查找街道中心线中的检修孔点,但为了使点能够包含线,点必须正好位于该线上(即,在 GIS 术语中,它们互相捕捉)。如果对此存在任何疑问,请在某一距离范围内关系中使用适当的距离值。
相交/不相交
如果第一个图层中的要素与第二个图层中要素的任何部分相重叠,包括相接触(要素共享公共点),则第一个图层中的要素将通过此相交测试。
- 相交 - 如果第一个图层中的要素与第二个图层中的要素相交,则只有叠加的那部分要素才会包括在输出之内。
- 不相交 - 如果第一个图层中的要素与第二个图层中的要素相交,则叠加的那部分要素不会包括在输出之内。
分组
可使用分组按钮 将两个或两个以上的连续表达式分为一组。使用 Shift + 单击选择要分组的多个表达式。
下面是一个需要进行分组的示例:
- 您拥有包含有毒化学物质的站点的点图层。每个点都具有属性 CHEMICAL,其中包含该站点中已知存在的有毒化学物质的名称。
- 您希望查找位于河流附近的含 MERCURY 或 SELENIUM 的有毒站点。
- 您还希望查找位于公园附近的含 BENZENE 或 LEAD 的有毒站点。
上述示例在同一有毒站点图层中创建了两组要素:公园附近的有毒站点和河流附近的有毒站点。这两组要素彼此之间是独立的。
由于河流附近的有毒站点组与公园附近的有毒站点之间是独立的,您可能希望使用分组来构建查询。图 1 显示了未进行逻辑运算符(逻辑运算符均为 )的任何分组或修改的初始查询。此查询的结果是同时位于公园及河流一千米范围内的有毒站点。这并不是我们想要的结果;我们希望得到一组位于河流一千米距离范围内的有毒站点,以及另一组位于公园一千米距离范围内的有毒站点。
要构建满足上述条件的查询,需要创建分组。每个分组构成一个子查询,其结果将与之前的表达式相结合。
由选择前两个属性表达式开始,如图 2 所示。
在选择这两个属性表达式后,单击分组按钮 。该分组会发生缩进,如图 3 所示。
选择第二组属性表达式,如图 3 所示。
在选择第二组之后,单击分组按钮。
最后,选择第二组属性表达式及其所属的空间表达式,如图 4 所示。
单击分组按钮,查询会发生缩进,如图 5 所示。最后一步,将 切换为 ,如图 5 所示。
图 5 中显示的查询将生成所需的结果。
- 查找到具有 Toxic Sites 或 LEAD 的 BENZENE,这些要素是查找位于 Parks 一千米距离范围内的有毒站点的子集。
- 接下来,查找到具有 Toxic Sites 或 SELENIUM 的 MERCURY,这些要素是查找位于 River 一千米距离范围内的有毒站点的子集。
- 最后,使用逻辑 对这两组要素进行组合。
只有需要在同一图层中创建两组或两组以上不同的要素时才需要进行表达式分组。可以这样理解分组:如果不分组,则需要执行两遍查找当前位置,第一遍用于查找位于河流附近的站点,第二遍用于查找位于公园附近的站点。然后使用合并工具对这两个结果进行组合。
可单击文本按钮 以查看查询的文本表达。文本表达使用括号来表示分组。
类似工具
使用派生新位置来根据查询创建新要素。其他工具或许在解决略有差异的类似问题时十分有用。
地图查看器分析工具
如果要查找与参考位置相似的位置,请使用查找相似位置。
如果尝试使用查询选择现有要素,请使用查找现有位置。
注:
查找现有位置工具和派生新位置工具的主要区别在于派生新位置的结果可包含部分要素。
- 在两种工具中,属性表达式位置以及空间表达式完全在其他要素范围内和完全包含会返回相同的结果,因为这些表达式都返回整个要素。
- 使用相交或在某一距离范围内时,派生新位置将在输出结果图层中创建新要素。