Referência e Manual do Usuário

ST_IsRing

ST_IsRing toma uma cadeia de linhas e retorna 1 (VERDADEIRO) se for um anel (a saber, a cadeia de linhas é fechada e simples); caso contrário, retornará 0 (FALSO).

Sintaxe

db2gse.ST_IsRing(c db2gse.ST_Curve)

Tipo de retorno

Inteiro

Exemplos

A seguinte instrução CREATE TABLE cria a tabela RING_LINESTRING, que tem uma coluna de cadeia de linhas simples denominada LN1.

CREATE TABLE RING_LINESTRING (ln1 db2gse.ST_LineString)

As seguintes instruções INSERT inserem três cadeias de linhas na coluna LN1. A primeira linha contém uma cadeia de linha que não é fechada e portanto não é um anel. A segunda linha contém uma cadeia de linhas que é fechada e é simples, portanto, é um anel. A terceira linha contém uma cadeia de linhas que está fechada mas não é simples porque faz interseção com seu próprio interior e, portanto, não é um anel.

INSERT INTO RING_LINESTRING
VALUES(db2gse.ST_LineFromText('linestring  (10.02 20.01,10.32 23.98,
11.92 25.64)', db2gse.coordref()..srid(0)))
 
INSERT INTO RING_LINESTRING
VALUES(db2gse.ST_LineFromText('linestring (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 RING_LINESTRING
VALUES(db2gse.ST_LineFromText('linestring (15.47 30.12,20.73 22.12,10.83 14.13,
                                 16.45 17.24,21.56 13.37,11.23 22.56,
                                 19.11 26.78,15.47 30.12)',
 
db2gse.coordref()..srid(0)))
 

A seguinte instrução SELECT e o conjunto de resultados correspondente mostra os resultados da função ST_IsRing. A primeira e a terceira linha retornam 0. Isto porque as cadeias de linhas não são anéis, ao passo que a segunda linha retorna 1 porque é um anel.

SELECT db2gse.ST_IsRing(ln1) "Is it ring" FROM RING_LINESTRING
 
Is it ring
-----------
          0
          1
          0
 
  3 record(s) selected.


[ Início da Página | Página Anterior | Próxima Página | Índice | Índice Remissivo ]