PostGIS: aynı öznitelik değerlerini paylaşan bitişik özellikler nasıl birleştirilir?


9

Çizgi özellikleri depolayan büyük bir PostGIS masam var.

Her ikisi de birbirine bağlı ve öznitelik değerleri aynı vermiş özellikleri birleştirmek istiyorum. Aşağıda neyi başarmak istediğime bir örnek verilmiştir.

  • En dıştaki özellikler (siyah ve mavi olanlar) birleştirilmez, çünkü öznitelik değerleri aynı olsa bile bitişik değildir
  • Yeşil ve kırmızı özellikler her iki koşulla da eşleştiği için birleştirilir
  • Özellik sarı önceki gibi bırakılır.

Bunu bir SQL sorgusu ile nasıl elde edersiniz? resim açıklamasını buraya girin

Yanıtlar:


7

Bunu ST_ClusterIntersecting ile yapabilirsiniz :

SELECT attr, unnest(ST_ClusterIntersecting(geom))
FROM lines
GROUP by attr;

Teşekkürler @dbaston! Önümüzdeki günlerde deneyeceğim ve size bildireceğim.
— wiltomap

İşlev ST_ClusterIntersecting()PostGIS 2.2'den edinilebilir ... Daha eski bir sürümle bir çözüm var mı? PostGIS 2.1.8'deyim ve şu an PostGIS'i yükseltemiyorum.
— wiltomap

İyi olduğunu düşünecek bir şeyim yok ... aslında bu durum beni yazmaya motive etti ST_ClusterIntersecting. 2.2 öncesi bazı fikirler gis.stackexchange.com/q/94203/18189
— dbaston
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.