Referência e Guia do Usuário

ST_Crosses

ST_Crosses toma dois objetos de geometria e retorna 1 (VERDADEIRO) se sua interseção resultar num objeto de geometria cuja dimensão seja menor que a dimensão máxima dos objetos de origem. O objeto de interseção contém pontos que são interiores para as duas geometrias de origem e não é igual a nenhum dos objetos de origem. Do contrário, retornará 0 (FALSO).

Sintaxe

db2gse.ST_Crosses(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)

Tipo de retorno

Inteiro

Exemplos

A prefeitura do município está considerando uma nova lei que declara que todas as estações de armazenamento de lixo tóxico dentro do município não poderão estar dentro de 8 km de qualquer curso de água. O gerente GIS do município possui uma representação exata de rios e córregos, que está armazenada como cadeias de linhas múltiplas na tabela WATERWAYS. Mas, o gerente GIS apresenta somente uma única localização de ponto para cada estação de armazenamento de lixo tóxico.

CREATE TABLE WATERWAYS (id     integer,
                        name   varchar(128),
                        water  db2gse.ST_MultiLineString);
 
CREATE TABLE HAZARDOUS_SITES ( site_id   integer,
                               name      varchar(128),
                               location  db2gse.ST_Point);

Para determinar se o supervisor do município precisa ser alertado das estações que violam o regulamento proposto, o gerente GIS deve ter buffer dos locais arriscados e verificar se algum rio ou córrego cruza o polígono do buffer. O predicado ST_Crosses compara os HAZARDOUS_SITES com buffer aos WATERWAYS. Assim, retornam somente esses registros nos quais o curso da água cruza o raio regulamentado proposto pelo município.

SELECT ww.name "River or stream", hs.name "Hazardous site"
FROM WATERWAYS ww, HAZARDOUS_SITES hs
WHERE db2gse.ST_Crosses(db2gse.ST_Buffer(hs.location,(5 * 5280)),ww.water)
=1;

Na Figura 31, o buffer de 8 km dos locais de lixo tóxico cruza a rede de córregos que passa pelo distrito administrativo do município. A rede de córregos foi definida como uma cadeia de linhas múltiplas. Portanto, o conjunto de resultados inclui segmentos da cadeia de linha que fazem parte destes segmentos que cruzam o raio.

Figura 31. Utilizando ST_Crosses para encontrar cursos de água que passam por área de lixo tóxico


top


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