O ST_PointOnSurface toma tanto um polígono como um multipolígono e retorna um ST_Point.
Sintaxe
db2gse.ST_PointOnSurface(s db2gse.ST_Surface)
db2gse.ST_PointOnSurface(ms db2gse.ST_MultiSurface)
Tipo de retorno
db2gse.ST_Point
Exemplos
O engenheiro da cidade precisa criar um ponto de rótulo para cada base de construção.
As bases da construção são armazenadas na tabela BUILDINGFOOTPRINTS que foi criada com a seguinte instrução CREATE TABLE.
CREATE TABLE BUILDINGFOOTPRINTS ( building_id integer, lot_id integer, footprint db2gse.ST_MultiPolygon);
A função ST_PointOnSurface gera um ponto que tem garantia de estar na superfície das bases de construção. A função ST_PointOnSurface retorna um ponto que a função AsBinaryShape converte em um shape convertido em uma cadeia de caracteres de 1 megabyte para ser usada pela aplicação.
SELECT CAST(db2gse.AsBinaryShape(db2gse.ST_PointOnSurface(footprint)) as blob(1m)) FROM BUILDINGFOOTPRINTS;