Name

ST_3DIntersects — ジオメトリが3次元で「空間的にインタセクトする」場合にTRUEを返します。ポイント、ラインストリング、ポリゴン、多面体サーフェス (面)のみ対応します。SFCGALバックエンドによってTINも対応します。

Synopsis

boolean ST_3DIntersects( geometry geomA , geometry geomB );

説明

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

Availability: 2.0.0

[Note]

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

[Note]

TIN対応の利点を得るには、SFCGALバックエンドを有効にしなければなりません。セッション時に有効にするにはset postgis.backend = sfcgal;とします。データベースレベルまたはシステムレベルで有効になるならセッション時に有効です。データベースレベルで有効にするにはALTER DATABASE gisdb SET postgis.backend = sfcgal;とします。

This function supports 3d and will not drop the z-index.

This function supports Polyhedral surfaces.

This function supports Triangles and Triangulated Irregular Network Surfaces (TIN).

This method is also provided by SFCGAL backend.

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

ジオメトリの例

SELECT ST_3DIntersects(pt, line), ST_Intersects(pt,line)
        FROM (SELECT 'POINT(0 0 2)'::geometry As pt,
                'LINESTRING (0 0 1, 0 2 3 )'::geometry As line) As foo;
 st_3dintersects | st_intersects
-----------------+---------------
 f               | t
(1 row)
                

TINの例

set postgis.backend = sfcgal;
SELECT ST_3DIntersects('TIN(((0 0,1 0,0 1,0 0)))'::geometry, 'POINT(.1 .1)'::geometry);
 st_3dintersects
-----------------
 t

関連情報

ST_Intersects