Referência e Manual do Usuário

ST_Relate

ST_Relate compara duas figuras geométricas e retorna 1 (VERDADEIRO) se as figuras geométricas atenderem às condições especificadas pela cadeia de matrizes do padrão DE-9IM; do contrário, 0 (FALSO) retornará. Para obter informações sobre as matrizes de padrão DE-9IM, consulte Funções do predicado.

Sintaxe

db2gse.ST_Relate(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry, patternMatrix CHAR(9))

Tipo de retorno

Inteiro

Exemplos

Uma matriz de padrão DE-9IM é um dispositivo para comparação de figuras geométricas. Há vários tipos de matrizes. Por exemplo, a matriz do padrão é igual informará se as duas figuras geométricas são iguais.

Neste exemplo, uma matriz de padrão igual, mostrada em Tabela 57, é lida da esquerda para a direita e de cima para baixo numa cadeia ("T*F**FFF*").

Tabela 57. Matriz de padrão igual



b




Interior

Limite

Exterior


Interior

T

*

F

a

Limite

*

*

F


Exterior

F

F

*

Em seguida, a tabela RELATE_TEST é criada com a seguinte instrução CREATE TABLE.

CREATE TABLE RELATE_TEST (rid integer, g1 db2gse.ST_Geometry,
g2 db2gse.ST_Geometry, g3 db2gse.ST_Geometry);

As seguintes instruções INSERT inserem uma subclasse na tabela RELATE_TEST.

INSERT INTO RELATE_TEST VALUES( 
       1, 
       db2gse.ST_PointFromText('point (10.02 20.01)', 
            db2gse.coordref()..srid(0), 
       db2gse.ST_PointFromText('point (10.02 20.01)', 
            db2gse.coordref()..srid(0), 
        db2gse.ST_PointFromText('point (30.01 20.01)',
db2gse.coordref()..srid(0)
)

A seguinte instrução SELECT e o conjunto de resultados correspondente relaciona o nome da subclasse armazenado na coluna GEOTYPE à dimensão desse geotipo.

SELECT rid, relate(g1,g2, 'T*F**FFF*') equals FROM relate_test
 
RID      equals        
-------- -----------  
1        1           
 
  1 record(s) selected.


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