跳转至

Geometry intersection join(几何相交连接(Geometry intersection join))

Supported in: Batch

Inner joins left and right datasets together based on whether input geometries overlap. Returns a row containing all of the columns from both datasets if the join key column pair has geometries which intersect. Currently does not support joining on multiple join keys. Silently filters null join key geometry values. Left and right datasets must not have the same column names. Silently nullifies invalid GeoJSON in join columns.

Transform categories: Geospatial, Join

Declared arguments

  • Join key: A list of GeoJSON columns from left and right inputs on which to join. A row will be selected if any column pair in this list has intersecting geometries.
    List\, Column\\>>
  • Left dataset: Left dataset to use in join.
    Table
  • Right dataset: Right dataset to use in join.
    Table

Examples

Example 1: Base case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs-1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs-1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]], "type": "Polygon"} rhsVal2
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal3
{"coordinates": [15.0, 15.0], "type":"Point"} rhsVal4
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal5
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"} rhsVal6
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal7
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"} rhsVal8
{"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal9
{"coordinates": [[[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal10

Output:

geometryColLhs lhs-1 geometryColRhs rhs-1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal3
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal5
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal7
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal9

Example 2: Base case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{} 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

Example 3: Null case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
null 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal2
null rhsVal3

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal2

Example 4: Null case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
null 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

Example 5: Edge case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], "type": "Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[175.0, 175.0], [195.0, 175.0], [195.0, 195.0], [175.0, 195.0], [175.0, 175.0]]], "type": "Polygon"} rhsVal1

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], "type": "Polygon"} 42.0 {"coordinates": [[[175.0, 175.0], [195.0, 175.0], [195.0, 195.0], [175.0, 195.0], [175.0, 175.0]]], "type": "Polygon"} rhsVal1

Example 6: Edge case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[0.0, 0.0], [5.0, 5.0], [0.0, 10.0], [10.0, 5.0], [0.0, 0.0]]], "type":"Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[0.0, 5.0], [2.5, 7.5], [4.0, 5.0], [2.5, 2.5], [0.0, 5.0]]], "type":"Polygon"} rhsVal1
{"coordinates": [[[0.0, 5.0], [2.0, 7.0], [4.0, 5.0], [2.0, 3.0], [0.0, 5.0]]], "type":"Polygon"} rhsVal2

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[0.0, 0.0], [5.0, 5.0], [0.0, 10.0], [10.0, 5.0], [0.0, 0.0]]], "type":"Polygon"} 42.0 {"coordinates": [[[0.0, 5.0], [2.5, 7.5], [4.0, 5.0], [2.5, 2.5], [0.0, 5.0]]], "type":"Polygon"} rhsVal1

Example 7: Edge case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs
{"coordinates": [0.0, 0.0], "type":"Point"}

ri.foundry.main.dataset.right

geometryColRhs
{"coordinates": [0.0, 0.0], "type":"Point"}
{"coordinates": [15.0, 15.0], "type":"Point"}

Output:

geometryColLhs geometryColRhs
{"coordinates": [0.0, 0.0], "type":"Point"} {"coordinates": [0.0, 0.0], "type":"Point"}

Example 8: Edge case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [0.0, 0.0], "type":"Point"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal1
{"coordinates": [15.0, 15.0], "type":"Point"} rhsVal2

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [0.0, 0.0], "type":"Point"} 42.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal1

Example 9: Edge case

Argument values:

  • Join key: [(geometryColLhs, geometryColRhs)]
  • Left dataset: ri.foundry.main.dataset.left
  • Right dataset: ri.foundry.main.dataset.right

Inputs:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[0.0, 0.0, 0.0], [10.0, 0.0, 0.0], [10.0, 10.0, 0.0], [10.0, 10.0, 10.0], [0.0, 10.0, 10.0], [0.0, 0.0, 10.0], [0.0, 0.0, 0.0]]], "type": "Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0, 2.0], [7.0, 2.0, 2.0], [7.0, 7.0, 2.0], [7.0, 7.0, 7.0], [2.0, 7.0, 7.0], [2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [[[12.0, 12.0, 12.0], [17.0, 12.0, 12.0], [17.0, 17.0, 12.0], [17.0, 17.0, 17.0], [12.0, 17.0, 17.0], [12.0, 12.0, 17.0], [12.0, 12.0, 12.0]]], "type": "Polygon"} rhsVal2

Output:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[0.0, 0.0, 0.0], [10.0, 0.0, 0.0], [10.0, 10.0, 0.0], [10.0, 10.0, 10.0], [0.0, 10.0, 10.0], [0.0, 0.0, 10.0], [0.0, 0.0, 0.0]]], "type": "Polygon"} 42.0 {"coordinates": [[[2.0, 2.0, 2.0], [7.0, 2.0, 2.0], [7.0, 7.0, 2.0], [7.0, 7.0, 7.0], [2.0, 7.0, 7.0], [2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], "type": "Polygon"} rhsVal1


中文翻译

几何相交连接(Geometry intersection join)

支持:批处理(Batch)

根据输入几何对象是否重叠,对左右数据集进行内连接(Inner join)。如果连接键列对中的几何对象存在相交,则返回包含两个数据集所有列的行。当前不支持多连接键连接。会静默过滤掉连接键中为空的几何值。左右数据集的列名不能相同。会静默将连接列中无效的 GeoJSON 设为空值。

转换类别:地理空间(Geospatial)、连接(Join)

声明的参数

  • 连接键(Join key): 左右输入中用于连接的 GeoJSON 列列表。如果此列表中任意列对的几何对象存在相交,则该行将被选中。
    List\, Column\\>>
  • 左数据集(Left dataset): 用于连接的左侧数据集。
    Table
  • 右数据集(Right dataset): 用于连接的右侧数据集。
    Table

示例

示例 1:基本情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs-1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs-1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]], "type": "Polygon"} rhsVal2
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal3
{"coordinates": [15.0, 15.0], "type":"Point"} rhsVal4
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal5
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"} rhsVal6
{"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal7
{"coordinates": [[20.0, 20.0], [21.0, 23.0]], "type":"LineString"} rhsVal8
{"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal9
{"coordinates": [[[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal10

输出:

geometryColLhs lhs-1 geometryColRhs rhs-1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal3
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal5
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[-1.0, -1.0], [5.0, 5.0]], "type":"LineString"} rhsVal7
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 42.0 {"coordinates": [[[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], [[[12.0, 12.0], [17.0, 12.0], [17.0, 17.0], [12.0, 17.0], [12.0, 12.0]]]], "type":"MultiPolygon"} rhsVal9

示例 2:基本情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{} 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

示例 3:空值情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
null 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal2
null rhsVal3

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal2

示例 4:空值情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
null 42.0
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"type":"Polygon","coordinates":[[[0.0,0.0],[0.0,10.0],[10.0,10.0],[10.0,0.0],[0.0,0.0]]]} 43.0 {"coordinates": [[[2.0, 2.0], [7.0, 2.0], [7.0, 7.0], [2.0, 7.0], [2.0, 2.0]]], "type": "Polygon"} rhsVal1

示例 5:边界情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], "type": "Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[175.0, 175.0], [195.0, 175.0], [195.0, 195.0], [175.0, 195.0], [175.0, 175.0]]], "type": "Polygon"} rhsVal1

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[170.0, 170.0], [190.0, 170.0], [190.0, 190.0], [170.0, 190.0], [170.0, 170.0]]], "type": "Polygon"} 42.0 {"coordinates": [[[175.0, 175.0], [195.0, 175.0], [195.0, 195.0], [175.0, 195.0], [175.0, 175.0]]], "type": "Polygon"} rhsVal1

示例 6:边界情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[0.0, 0.0], [5.0, 5.0], [0.0, 10.0], [10.0, 5.0], [0.0, 0.0]]], "type":"Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[0.0, 5.0], [2.5, 7.5], [4.0, 5.0], [2.5, 2.5], [0.0, 5.0]]], "type":"Polygon"} rhsVal1
{"coordinates": [[[0.0, 5.0], [2.0, 7.0], [4.0, 5.0], [2.0, 3.0], [0.0, 5.0]]], "type":"Polygon"} rhsVal2

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[0.0, 0.0], [5.0, 5.0], [0.0, 10.0], [10.0, 5.0], [0.0, 0.0]]], "type":"Polygon"} 42.0 {"coordinates": [[[0.0, 5.0], [2.5, 7.5], [4.0, 5.0], [2.5, 2.5], [0.0, 5.0]]], "type":"Polygon"} rhsVal1

示例 7:边界情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs
{"coordinates": [0.0, 0.0], "type":"Point"}

ri.foundry.main.dataset.right

geometryColRhs
{"coordinates": [0.0, 0.0], "type":"Point"}
{"coordinates": [15.0, 15.0], "type":"Point"}

输出:

geometryColLhs geometryColRhs
{"coordinates": [0.0, 0.0], "type":"Point"} {"coordinates": [0.0, 0.0], "type":"Point"}

示例 8:边界情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [0.0, 0.0], "type":"Point"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [0.0, 0.0], "type":"Point"} rhsVal1
{"coordinates": [15.0, 15.0], "type":"Point"} rhsVal2

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [0.0, 0.0], "type":"Point"} 42.0 {"coordinates": [0.0, 0.0], "type":"Point"} rhsVal1

示例 9:边界情况

参数值:

  • 连接键: [(geometryColLhs, geometryColRhs)]
  • 左数据集: ri.foundry.main.dataset.left
  • 右数据集: ri.foundry.main.dataset.right

输入:

ri.foundry.main.dataset.left

geometryColLhs lhs1
{"coordinates": [[[0.0, 0.0, 0.0], [10.0, 0.0, 0.0], [10.0, 10.0, 0.0], [10.0, 10.0, 10.0], [0.0, 10.0, 10.0], [0.0, 0.0, 10.0], [0.0, 0.0, 0.0]]], "type": "Polygon"} 42.0

ri.foundry.main.dataset.right

geometryColRhs rhs1
{"coordinates": [[[2.0, 2.0, 2.0], [7.0, 2.0, 2.0], [7.0, 7.0, 2.0], [7.0, 7.0, 7.0], [2.0, 7.0, 7.0], [2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], "type": "Polygon"} rhsVal1
{"coordinates": [[[12.0, 12.0, 12.0], [17.0, 12.0, 12.0], [17.0, 17.0, 12.0], [17.0, 17.0, 17.0], [12.0, 17.0, 17.0], [12.0, 12.0, 17.0], [12.0, 12.0, 12.0]]], "type": "Polygon"} rhsVal2

输出:

geometryColLhs lhs1 geometryColRhs rhs1
{"coordinates": [[[0.0, 0.0, 0.0], [10.0, 0.0, 0.0], [10.0, 10.0, 0.0], [10.0, 10.0, 10.0], [0.0, 10.0, 10.0], [0.0, 0.0, 10.0], [0.0, 0.0, 0.0]]], "type": "Polygon"} 42.0 {"coordinates": [[[2.0, 2.0, 2.0], [7.0, 2.0, 2.0], [7.0, 7.0, 2.0], [7.0, 7.0, 7.0], [2.0, 7.0, 7.0], [2.0, 2.0, 7.0], [2.0, 2.0, 2.0]]], "type": "Polygon"} rhsVal1