このトピックでは、[空間検索 (Select Layer By Location)] ツールおよび [空間結合 (Spatial Join)] ツールで使用できる [リレーションシップ] パラメーターの例および期待される結果について説明します。
[インターセクト 3D (Intersect 3D)] および [一定距離内にある (3D)] オプションの詳細については、「空間検索: 3D リレーションシップ」をご参照ください。
用語
| ダイアログ キーワード | Python キーワード | 
|---|---|
| 交差する | INTERSECT | 
| 交差する (3D) | INTERSECT_3D | 
| 交差する (DBMS) | INTERSECT_DBMS | 
| 一定距離内にある (測地線) | WITHIN_A_DISTANCE_GEODESIC | 
| 一定距離内にある | WITHIN_A_DISTANCE | 
| 一定距離内にある (3D) | WITHIN_A_DISTANCE_3D | 
| 含む | CONTAINS | 
| 完全に含む | COMPLETELY_CONTAINS | 
| 含む (Clementini) | CONTAINS_CLEMENTINI | 
| 含まれる | WITHIN | 
| 完全に含まれる | COMPLETELY_WITHIN | 
| 含まれる (Clementini) | WITHIN_CLEMENTINI | 
| 正確に一致する | ARE_IDENTICAL_TO | 
| 境界に接する | BOUNDARY_TOUCHES | 
| 線分を共有する | SHARE_A_LINE_SEGMENT_WITH | 
| アウトラインが横切る | CROSSED_BY_THE_OUTLINE_OF | 
| 重心が含まれる | HAVE_THEIR_CENTER_IN | 
以下のすべての詳細は、[空間検索 (Select Layer By Location)] ツールの用語を使用して記述されています。 ただし、これらの詳細は [空間結合 (Spatial Join)] ツールにも適用されます。 ツール間で、パラメーター名が次のように異なります。
- [空間検索 (Select Layer By Location)] ツールには、[入力フィーチャ レイヤー] パラメーターがあります。[空間結合 (Spatial Join)] ツールでそれに相当するパラメーターは、[ターゲット フィーチャ] です。
- [空間検索 (Select Layer By Location)] ツールには、[選択フィーチャ] パラメーターがあります。[空間結合 (Spatial Join)] ツールでそれに相当するパラメーターは、[結合フィーチャ] です。
- [空間検索 (Select Layer By Location)] ツールには、[リレーションシップ] パラメーターがあります。[空間結合 (Spatial Join)] ツールでそれに相当するパラメーターは、[マッチ オプション] です。
Clementini 空間リレーションシップ
[含まれる (Clementini)] および [含む (Clementini)] オプションは、Eliseo Clementini、Paolino Di Felice、Peter van Oosterom 著『A Small Set of Formal Topological Relationships Suitable for End-User Interaction』(Third International Symposium on Advances in Spatial Databases の議事録、277 ~ 295 ページ、1993 年 6 月 23 ~ 25 日) で定義されている「範囲内」と「包含」の空間リレーションシップを指します。
3 つの包含空間リレーションシップの相違
ラインの場合、境界線は 2 つの端点であり、ポリゴンの場合はエッジです。
- [含む] - 選択フィーチャ レイヤー フィーチャを含む、入力フィーチャ レイヤー フィーチャを選択します。 選択フィーチャは、入力フィーチャ レイヤーの境界線内部や境界線上に存在します。
- [完全に含む] - 選択フィーチャ レイヤー フィーチャを含む、入力フィーチャ レイヤー フィーチャを選択します (選択フィーチャ レイヤー フィーチャが入力フィーチャ レイヤーの境界線と交差していない場合に限る)。
- [含む (Clementini)] - 選択フィーチャ レイヤー フィーチャが、入力フィーチャ レイヤーの境界線上に完全に含まれ、含まれているフィーチャのどの部分も入力フィーチャ レイヤー フィーチャに含まれていない場合には、その入力フィーチャが選択されない点を除いて、[含む] オプションと同じ結果になります。 Clementini によると、ポイントの境界線は常に空になり、ラインの境界線は端点になると考えられます。
[含む] および [含む (Clementini)] オプションでは、ポイント入力とマルチポイント入力で同じ結果が生成され、選択フィーチャはポイントまたはマルチポイントになります。
3 つの範囲内空間リレーションシップの相違
- [含まれる] - 選択フィーチャ レイヤー フィーチャの範囲内にあるか、包含される入力フィーチャ レイヤー フィーチャを選択します。
- [完全に含まれる] - 入力フィーチャ レイヤー フィーチャが、選択フィーチャ レイヤー フィーチャの境界線と交差している場合には選択されない点を除いて、[含まれる] オプションと同じ結果になります。
- [含まれる (Clementini)] - 入力フィーチャ レイヤー フィーチャ全体が、選択フィーチャ レイヤー フィーチャの境界線の上にある場合を除いて、[含まれる] オプションと同じ結果になります。 Clementini によると、ポイントの境界線は常に空になり、ラインの境界線は端点になると考えられます。
図の凡例
以下のすべての例に、次の凡例が適用されます。
- 入力フィーチャ - 緑の円
- 入力フィーチャの中央 - 赤い X
- 選択フィーチャ - 灰色の矩形
図には、A、B、C などのラベルが付いています。 該当するジオメトリの組み合わせに有効な各リレーションシップ オプション ([インターセクト]、[含む] など) が表の左側の列に示されています。 リレーションシップの例として選択されるジオメトリは、表の右側の列に表示されています。
ポイントを使用してポイントを選択

| 交差する | A | 
| 交差する (DBMS) | A | 
| 含む | A | 
| 含む (Clementini) | A | 
| 含まれる | A | 
| 含まれる (Clementini) | A | 
| 正確に一致する | A | 
| 重心が含まれる | A | 
マルチポイントを使用してポイントを選択

| 交差する | A、C | 
| 交差する (DBMS) | A、C | 
| 含む | A | 
| 含む (Clementini) | A | 
| 含まれる | A、C | 
| 含まれる (Clementini) | A、C | 
| 正確に一致する | A | 
| 重心が含まれる | A、C | 
ラインを使用してポイントを選択

| 交差する | A、C | 
| 交差する (DBMS) | A、C | 
| 含まれる | A、C | 
| 完全に含まれる | A | 
| 含まれる (Clementini) | A | 
| 重心が含まれる | A、C | 
| 境界に接する | C | 
ポリゴンを使用してポイントを選択

| 交差する | A、C | 
| 交差する (DBMS) | A、C | 
| 含まれる | A、C | 
| 完全に含まれる | A | 
| 含まれる (Clementini) | A | 
| 重心が含まれる | A、C | 
| 境界に接する | C | 
ポイントを使用してマルチポイントを選択

| 交差する | A、C | 
| 交差する (DBMS) | A、C | 
| 含む | A、C | 
| 含む (Clementini) | A、C | 
| 含まれる | A | 
| 含まれる (Clementini) | A | 
| 正確に一致する | A | 
| 重心が含まれる | A、D | 
マルチポイントを使用してマルチポイントを選択

| 交差する | A、C、D、E、F | 
| 交差する (DBMS) | A、C、D、E、F | 
| 含む | A、F | 
| 含む (Clementini) | A、F | 
| 含まれる | A、C | 
| 含まれる (Clementini) | A、C | 
| 正確に一致する | A | 
| 重心が含まれる | A、D | 
ラインを使用してマルチポイントを選択

| 交差する | A、C、E、F | 
| 交差する (DBMS) | A、C、E、F | 
| 含まれる | A、C、E | 
| 完全に含まれる | A | 
| 含まれる (Clementini) | A、E | 
| 重心が含まれる | A、D、E | 
| 境界に接する | C、E | 
ポリゴンを使用してマルチポイントを選択

| 交差する | A、C、D、E、F | 
| 交差する (DBMS) | A、C、D、E、F | 
| 含まれる | A、C、D、E | 
| 完全に含まれる | A | 
| 含まれる (Clementini) | A、D、E | 
| 重心が含まれる | A、B、C、E、F | 
| 境界に接する | C、E | 
ポイントを使用してラインを選択

| 交差する | A、C、D | 
| 交差する (DBMS) | A、C、D | 
| 含む | A、C、D | 
| 完全に含む | A、D | 
| 含む (Clementini) | A、D | 
| 重心が含まれる | D | 
| 境界に接する | C | 
マルチポイントを使用してラインを選択

| 交差する | A、C、D、E | 
| 交差する (DBMS) | A、C、D、E | 
| 含む | A、C、E | 
| 完全に含む | A | 
| 含む (Clementini) | A、E | 
| 重心が含まれる | D | 
| 境界に接する | C、E | 
ラインを使用してラインを選択

| 交差する | A、C、D、E、F、G、H、I、J | 
| 交差する (DBMS) | A、C、D、E、F、G、H、I、J | 
| 含む | G、H | 
| 完全に含む | G | 
| 含む (Clementini) | G、H | 
| 含まれる | F、H | 
| 完全に含まれる | F | 
| 含まれる (Clementini) | F、H | 
| 正確に一致する | H | 
| 境界に接する | C、E | 
| 線分を共有する | F、G、H、I、J | 
ポリゴンを使用してラインを選択

| 交差する | A、C、D、E、F、G、H、I、J、K、L、M、N、O | 
| 交差する (DBMS) | A、C、D、E、F、G、H、I、J、K、L、M、N、O | 
| 含まれる | A、D、G、H、I、O | 
| 完全に含まれる | A | 
| 含まれる (Clementini) | A、D、G、H、I | 
| 境界に接する | F、G、H、I、K、L、M、N、O | 
| 線分を共有する | G、I、J、K、M、O | 
| アウトラインが横切る | C、E、H、L、N | 
| 重心が含まれる | A、C、D、E、G、H、I、J、O | 
ポイントを使用してポリゴンを選択

| 交差する | A、B | 
| 交差する (DBMS) | A、B | 
| 含む | A、B | 
| 完全に含む | A | 
| 含む (Clementini) | A | 
| 重心が含まれる | A、D | 
| 境界に接する | B | 
マルチポイントを使用してポリゴンを選択

| 交差する | A、B、C、E | 
| 交差する (DBMS) | A、B、C、E | 
| 含む | A、B、E | 
| 完全に含む | A | 
| 含む (Clementini) | A、B | 
| 重心が含まれる | A、D | 
| 境界に接する | E | 
ラインを使用してポリゴンを選択

| 交差する | A、C、D、E、F、G、H、I、J、K、L、M、N、O | 
| 交差する (DBMS) | A、C、D、E、F、G、H、I、J、K、L、M、N、O | 
| 含む | A、D、G、H、I、O | 
| 完全に含む | A | 
| 含む (Clementini) | A、D、G、H、I | 
| 境界に接する | F、G、H、I、K、L、M、N、O | 
| 線分を共有する | G、I、J、K、M、O | 
| アウトラインが横切る | C、E、H、L、N | 
| 重心が入力フィーチャに含まれる | E、I、L | 
ポリゴンを使用してポリゴンを選択

| 交差する | A、C、D、E、F、G、H、I、J、K、M | 
| 交差する (DBMS) | A、C、D、E、F、G、H、I、J、K、M | 
| 含む | C、E、H、M | 
| 完全に含む | C | 
| 含む (Clementini) | C、E、H、M | 
| 含まれる | F、G、H、M | 
| 完全に含まれる | F | 
| 含まれる (Clementini) | F、G、H、M | 
| 正確に一致する | H、M | 
| 境界に接する | D、E、G、H、I、J、M | 
| 線分を共有する | D、H、I、M | 
| アウトラインが横切る | A、E、G、J、K | 
| 重心が含まれる | C、E、F、G、H、K、L |