Name

ST_Intersects — ジオメトリ/ジオグラフィが「2次元空間で空間的にインタセクトする」 (空間に共有部分がある)場合にTRUEを返します。そうでない (非接続)場合はFALSEを返します。ジオグラフィについては、許容量は0.00001メートルです (近い点はインタセクトと考えられてしまいます)。

Synopsis

boolean ST_Intersects( geometry geomA , geometry geomB );

boolean ST_Intersects( geography geogA , geography geogB );

説明

ジオメトリ/ジオグラフィが空間に共有部分がある場合には、インタセクトしています。ジオグラフィでは許容誤差が0.00001メートルです (近い点はインタセクトと考えられてしまいます)。

オーバラップ、接触、包含は全て、ジオメトリがインタセクトしていることを意味しています。これらがTRUEを返す場合は、空間的にインタセクトしています。非接続は、空間インタセクトについてFALSEとなります。

[Important]

ジオメトリ版では、GEOMETRYCOLLECTIONを引数にして呼ばないでください。ジオグラフィ版では、距離計測の実装にかぶせられる薄いラッパですので、GEOMETRYCOLLECTIONに対応しています。

Enhanced: 2.3.0 Enhancement to PIP short-circuit extended to support MultiPoints with few points. Prior versions only supported point in polygon.

ジオメトリについては、GEOSモジュールで実現しています。ジオグラフィについてはネイティブです。

Availability: 1.5 ジオグラフィ対応が導入されました。

[Note]

この関数の呼び出しによって、ジオメトリで使用可能なインデクスを使用したバウンディングボックスの比較が自動的に行われます。

[Note]

ジオグラフィでは、この関数は0.00001メートルの距離許容を持ち、回転楕円体計算でなく球面を使います。

[Note]

ご注意: これは論理値を返して整数を返さないのが「許される」版です。

This method implements the OpenGIS Simple Features Implementation Specification for SQL 1.1. s2.1.1.2 //s2.1.13.3 - ST_Intersects(g1, g2 ) --> Not (ST_Disjoint(g1, g2 ))

This method implements the SQL/MM specification. SQL-MM 3: 5.1.27

This method is also provided by SFCGAL backend.

ジオメトリの例

SELECT ST_Intersects('POINT(0 0)'::geometry, 'LINESTRING ( 2 0, 0 2 )'::geometry);
 st_intersects
---------------
 f
(1 row)
SELECT ST_Intersects('POINT(0 0)'::geometry, 'LINESTRING ( 0 0, 0 2 )'::geometry);
 st_intersects
---------------
 t
(1 row)
                

ジオグラフィの例

SELECT ST_Intersects(
                ST_GeographyFromText('SRID=4326;LINESTRING(-43.23456 72.4567,-43.23456 72.4568)'),
                ST_GeographyFromText('SRID=4326;POINT(-43.23456 72.4567772)')
                );

 st_intersects
---------------
t

関連情報

ST_3DIntersects, ST_Disjoint