名前

ST_IsValid — ST_Geometryが妥当である場合にTRUEを返します.

概要

boolean ST_IsValid(geometry g);

説明

ST_Geometry値が妥当かを見ます. 不正なジオメトリに対しては,その理由の詳細をPostgreSQLの警告で提供します. OGCのジオメトリ単純性と妥当性の定義に関する詳細情報については"Ensuring OpenGIS compliancy of geometries"をご覧ください.

[注意]

SQL-MMはST_IsValid(NULL)の結果を0とすると定義していますが,PostGISではNULLを返します.

このメソッドは OpenGIS Simple Features Implementation Specification for SQL 1.1.を実装するものです.

このメソッドはSQL/MM仕様の実装です. SQL-MM 3: 5.1.9

SELECT ST_IsValid(ST_GeomFromText('LINESTRING(0 0, 1 1)')) As good_line,
	ST_IsValid(ST_GeomFromText('POLYGON((0 0, 1 1, 1 2, 1 1, 0 0))')) As bad_poly
--results
NOTICE:  Self-intersection at or near point 0 0 (0 0の点またはその近傍で自己接触があります)
 good_line | bad_poly
-----------+----------
 t         | f

関連情報

ST_IsSimple, ST_IsValidReason, ST_Summary