名稱

ST_PatchN — 傳回 PolyhedralSurface 的第 N 個幾何圖形(面)。

概要

geometry ST_PatchN(geometry geomA, integer n);

說明

如果幾何圖形是 POLYHEDRALSURFACE 或 POLYHEDRALSURFACEM,則傳回以 1 為起始的第 N 個幾何圖形(面)。否則,傳回 NULL。這會傳回與 PolyhedralSurface 的 ST_GeometryN 相同的答案。使用 ST_GeometryN 速度更快。

[Note]

索引是以 1 為起始的。

[Note]

如果要擷取幾何圖形的所有元素,使用 ST_Dump 會更有效率。

可用性:2.0.0

此方法實作 SQL/MM 規範。SQL-MM ISO/IEC 13249-3: 8.5

此函式支援 3D 且不會丟棄 z 索引。

此函式支援多面體表面。

範例

--Extract the 2nd face of the polyhedral surface
SELECT ST_AsEWKT(ST_PatchN(geom, 2)) As geomewkt
FROM (
VALUES (ST_GeomFromEWKT('POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
	((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
	((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
	((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)), ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )')) ) As foo(geom);

              geomewkt
---+-----------------------------------------
 POLYGON((0 0 0,0 1 0,1 1 0,1 0 0,0 0 0))