用户指南和参考

ST_ConvexHull

ST_ConvexHull 接受几何图形对象并返回凸壳。

语法

db2gse.ST_ConvexHull(g db2gse.ST_Geometry)

返回类型

db2gse.ST_Geometry

示例

该示例创建 CONVEXHULL_TEST 表,该表具有两列:GEOTYPE 和 G1。 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 列中存储的子类名和凸壳。 由 ST_AsText 函数将 ST_ConvexHull 函数生成的凸壳转换为文本。 然后将它转换为 varchar(256),因为 ST_AsText 的缺省输出为 varchar(4000)。

SELECT GEOTYPE, CAST(db2gse.ST_AsText(db2gse.ST_ConvexHull(G1))) as varchar(256)
"The convexhull"
FROM CONVEXHULL_TEST


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]