ST_InteriorRingN
定义
St_InteriorRingN 以 ST_LineString 形式返回面的第 n 个内部环。
环的顺序不能预先定义,因为环是按照由内部几何验证例程定义的规则进行组织,而不是按照由几何方向定义的规则进行组织。如果索引超出了面所拥有的内部环数,则返回空值。
语法
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)
7/10/2012