A função ST_Intersects do PostGIS retorna verdadeiro se duas
geometrias compartilham qualquer porção do espaço (é a "função contrária" à
ST_Disjoint). Essa função recebe as duas geometrias envolvidas:
ST_Intersects (a.geom, b.geom)
A função ST_Intersects tem elevada precisão (tolerância
muito baixa). Mesmo quando a vetorização é feita com o “SNAP” (atração)
habilitado, isso eventualmente pode ser um problema quando precisa ser usado em
porções intermediárias de linhas ou polígonos (em pontos, vértices ou nós
dificilmente ocorre), ou em algum outro caso específico. Uma solução para essa
questão, que permite verificar intersecções com tolerância maior, é o uso da
função ST_DWithin, que recebe por parâmetro, além das geometrias envolvidas, o
valor tolerância (ou seja, funciona como se fosse um ST_Intersects com “buffer”
definido pela tolerância).
ST_DWithin (a.geom, b.geom,
tolerância)
Obs.: A tolerância depende do sistema de coordenadas utilizado. Utilizei tolerância 0.00001 em sistema de coordenadas UTM e isso se mostrou bem
adequado para trabalhar com elementos em cidades de médio porte.
Nenhum comentário:
Postar um comentário