ST_PolyFromWKB
定義
ST_PolyFromWKB は、WKB 表現と空間参照 ID を受け取って、ST_Polygon を返します。
構文
Oracle
sde.st_polyfromwkb (wkb blob, srid integer)
PostgreSQL
sde.st_polyfromwkb (wkb bytea, srid integer)
戻り値のタイプ
ST_Polygon
例
以下の例では、読みやすいように結果の書式を再設定しています。結果で表示される間隔は、各自のオンライン表示によって異なります。この例では、ST_PolyFromWKB を使用して、その WKB 表現からポリゴンを作成する方法を示しています。ジオメトリは、空間参照系 1 のポリゴンです。この例では、ポリゴンを sample_polys テーブルの geometry 列に ID = 1115 で格納した後、wkb 列を(ST_AsBinary 関数を使用して)WKB 表現で更新しています。最後に、ST_PolyFromWKB 関数を使用して、WKB 列からマルチポリゴンを返します。このジオメトリの X および Y 座標は(50, 20)、(50, 40)、(70, 30)です。sample_polys テーブルには、ポリゴンを格納する geometry 列と、ポリゴンの WKB 表現を格納する wkb 列があります。
Oracle
CREATE TABLE sample_polys (id integer, geometry sde.st_geometry, wkb blob); INSERT INTO SAMPLE_POLYS (id, geometry) VALUES ( 1115, sde.st_polyfromtext ('polygon ((10.01 20.03, 10.52 40.11, 30.29 41.56, 31.78 10.74, 10.01 20.03))', 0) ); UPDATE SAMPLE_POLYS SET wkb = sde.st_asbinary (geometry) WHERE id = 1115;
PostgreSQL
CREATE TABLE sample_polys (id integer, geometry sde.st_geometry, wkb bytea); INSERT INTO sample_polys (id, geometry) VALUES ( 1115, sde.st_polygon ('polygon ((10.01 20.03, 10.52 40.11, 30.29 41.56, 31.78 10.74, 10.01 20.03))', 0) ); UPDATE sample_polys SET wkb = sde.st_asbinary (geometry) WHERE id = 1115;
次の SELECT ステートメントで、ST_PointFromWKB 関数を使用して、WKB 列からポイントを取得します。
Oracle
SELECT id, sde.st_astext (sde.st_polyfromwkb (wkb, 0)) POLYS FROM SAMPLE_POLYS; ID POLYS 1115 POLYGON (10.01000000 20.03000000, 31.78000000 10.74000000, 30.29000000 41.56000000, 10.52000000 40.11000000, 10.01000000 20.03000000)
PostgreSQL
SELECT id, sde.st_astext (sde.st_polyfromwkb (wkb, 0)) AS POLYS FROM sample_polys; id polys 1115 POLYGON (10.01000000 20.03000000, 31.78000000 10.74000000, 30.29000000 41.56000000, 10.52000000 40.11000000, 10.01000000 20.03000000)
7/10/2012