ST_ConvexHullÀº ±âÇÏÇÐ ¿ÀºêÁ§Æ®¸¦ ÃëÇØ º¼·Ï µ¤°³¸¦ ¸®ÅÏÇÕ´Ï´Ù.
±¸¹®
db2gse.ST_ConvexHull(g db2gse.ST_Geometry)
¸®ÅÏ À¯Çü
db2gse.ST_Geometry
¿¹
ÀÌ ¿¹¿¡¼´Â GEOTYPE°ú G1 µÎ °³ÀÇ Ä÷³ÀÌ ÀÖ´Â CONVEXHULL_TEST Å×À̺íÀ» ÀÛ¼ºÇÕ´Ï´Ù. GEOTYPE Ä÷³ÀÎ varchar(20)Àº ±âÇÏÇÐÀ¸·Î Á¤ÀÇµÈ G1¿¡ ÀúÀåµÈ ±âÇÏÇÐÀÇ ¼ºêŬ·¡½º À̸§À» ÀúÀåÇÕ´Ï´Ù.
CREATE TABLE CONVEXHULL_TEST (geotype varchar(20), g1 db2gse.ST_Geometry)
°¢ INSERT¹®Àº CONVEXHULL_TEST Å×ÀÌºí¿¡ °¢ ¼ºêŬ·¡½º À¯ÇüÀÇ ±âÇÏÇÐÀ» »ðÀÔÇÕ´Ï´Ù.
INSERT INTO CONVEXHULL_TEST VALUES('Point', db2gse.ST_PointFromText('point (10.02 20.01)', db2gse.coordref()..srid(0))) INSERT INTO CONVEXHULL_TEST VALUES('Linestring', db2gse.ST_LineFromText('linestring (10.02 20.01,10.32 23.98, 11.92 25.64)', db2gse.coordref()..srid(0))) INSERT INTO CONVEXHULL_TEST VALUES('Polygon', db2gse.ST_PolyFromText('polygon ((10.02 20.01,11.92 35.64,25.02 34.15, 19.15 33.94, 10.02 20.01))', db2gse.coordref()..srid(0))) INSERT INTO CONVEXHULL_TEST VALUES('Multipoint', db2gse.ST_MPointFromText('multipoint (10.02 20.01,10.32 23.98, 11.92 25.64)', db2gse.coordref()..srid(0))) INSERT INTO CONVEXHULL_TEST VALUES('Multilinestring', db2gse.ST_MLineFromText('multilinestring ((10.02 20.01,10.32 23.98, 11.92 25.64),(9.55 23.75,15.36 30.11))', db2gse.coordref()..srid(0))) INSERT INTO CONVEXHULL_TEST VALUES('Multipolygon', db2gse.ST_MPolyFromText('multipolygon (((10.02 20.01,11.92 35.64, 25.02 34.15, 19.15 33.94,10.02 20.01)), ((51.71 21.73,73.36 27.04,71.52 32.87, 52.43 31.90,51.71 21.73)))', db2gse.coordref()..srid(0)))
´ÙÀ½ÀÇ SELECT¹®Àº GEOTYPE Ä÷³ ¹× convex hull¿¡ ÀúÀåµÈ ¼ºêŬ·¡½º À̸§À» ³ª¿ÇÕ´Ï´Ù. ST_ConvexHull ÇÔ¼ö¿¡ ÀÇÇØ »ý¼ºµÈ º¼·Ïµ¤°³(convexhull)´Â ST_AsText ÇÔ¼ö¿¡ ÀÇÇØ ÅØ½ºÆ®·Î º¯È¯µË´Ï´Ù. ±×·± ´ÙÀ½, ÀÌ´Â ST_AsTextÀÇ ±âº» Ãâ·ÂÀÌ varchar(4000)À̹ǷΠvarchar(256)·Î ¹èÁ¤µË´Ï´Ù.
SELECT GEOTYPE, CAST(db2gse.ST_AsText(db2gse.ST_ConvexHull(G1))) as varchar(256) "The convexhull" FROM CONVEXHULL_TEST