Spatial Data: Uniões e Intersecções

Algumas possibilidades interessantes dos Spatial Types é a combinação de polígonos, seja por união, intersecção ou exclusão.

A forma de união mais simples é a utilização do UNION ALL do próprio T-SQL, que possibilita combinar em uma mesma visualização (no SSMS) alguns pontos ou até milhares de polígonos.

DECLARE @P1 geometry
DECLARE @P2 geometry
SET @P1 = geometry::Point(10, 10, 0).STBuffer(5)
SET @P2 = geometry::Point(15, 10, 0).STBuffer(5)

SELECT @P1
UNION ALL
SELECT @P2

Em seguida, temos a união de dois polígonos pelo método STUnion:

SELECT @P1.STUnion(@P2)

Identificando a intersecção de dois polígonos pelo método STIntersection:

SELECT @P1.STIntersection(@P2)

O método STDifference combina dois polígonos removendo do primeiro polígono a área do segundo polígono:

SELECT @P1.STDifference(@P2)

SELECT @P2.STDifference(@P1)

E por fim, o método STSymDifference que combina dos polígonos removendo destes a área de intersecção:

SELECT @P1.STSymDifference(@P2)

Anúncios

2 pensamentos sobre “Spatial Data: Uniões e Intersecções

  1. Pingback: Trabalhando com SQL CLR e Spatial Data « SQL From Hell.com

  2. Pingback: Trabalhando com Spatial Data no SQL Server – Resumo « SQL From Hell.com

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s