ST_InteriorRingN
定義
St_InteriorRingN は、ポリゴンの n 番目の内部リングを ST_LineString として返します。
リングの順序は事前に定義できません。リングは、幾何学的な向きではなく、内部のジオメトリ検証ルーチンによって定義された規則に従って編成されるためです。インデックスがポリゴンが持つ内部リングの数を超えた場合、NULL 値が返されます。
構文
Oracle
sde.st_interiorringn (pl1 sde.st_polygon, INDEX integer)
戻り値のタイプ
ST_LineString
例
sample_polys テーブルを作成し、レコードを追加します。
CREATE TABLE sample_polys (id integer, geometry sde.st_geometry); INSERT INTO sample_polys VALUES ( 1, sde.st_polygon ('polygon ((40 120, 90 120, 90 150, 40 150, 40 120), (50 130, 60 130, 60 140, 50 140, 50 130), (70 130, 80 130, 80 140, 70 140, 70 130))', 0) );
内部リングの ID とジオメトリを選択します。
Oracle
SELECT id, sde.st_astext (sde.st_interiorringn (geometry, 2)) Interior_Ring FROM SAMPLE_POLYS; ID INTERIOR_RING 1 LINESTRING (70.00000000 130.00000000, 70.00000000 140.00000000, 80.00000000 140.00000000, 80.00000000 130.00000000, 70.00000000 130.00000000)
PostgreSQL
SELECT id, sde.st_astext (st_interiorringn (geometry, 2)) AS Interior_Ring FROM sample_polys; id interior_ring 1 LINESTRING (70 130, 70 140, 80 140, 80 130, 70 130)
3/6/2012