Belirli bir DEM'den kesme çizgileri nasıl çıkarılır?


10

Kesme çizgileri bir araziyi tanımlamak için çok yararlıdır - örneğin kesin bir TIN oluşturmak için.

Benim sorum, bu kesme çizgileri belirli bir DEM'den nasıl ayıklanır?

Kırıkları (min / maks-eğrilik) görebileceğiniz eğriliği (dikey) - raster (arcgis 10 kullanarak) hesapladım, ancak sonunda polinleri almak için bunları nasıl çıkaracağımı anlayamadım.

Bu kesme çizgilerini bir DEM'den almak için iş akışı nedir?

Herkesin yardımcı olabilecek bir iş akışı, "araç" veya skript fikri var mı?

Bence bu görevi gerçekleştirmek isteyen ilk / son kişi değilim :)

... bu arada , bu konuda iyi bir çözüm gibi görünen bir makale buldum , ancak büyük soru var: Bunu pratik yapmak için nasıl azaltabilirim?

Veya herhangi bir yazılımla farklı (daha kolay?) Bir yaklaşım var mı?


Hatırlayabildiğim kadarıyla, QuikGrid , çoğunlukla kütle noktalarıyla çalışmasına rağmen , kesme çizgilerini çok iyi tespit edebilir.
Jan Šimbera

Ne tür breakline'lar çıkarmak istiyorsunuz? En yaygın olanı hidro-düzleştirme olacaktır, ancak yollar için kesme çizgileri kullanılabilir. Açıklayabilir misin?
geomatix

Yanıtlar:


2

Ben bu şekilde denemek istiyorum: eğrilik raster dosyasında kritik bir değer arayın. Bu değerin üstünde bir kırılma beklenir.

Sonra, raster hesap makinesindeki koşullu ifadeleri, kritik değerin üstündeki ve 0 değerinin altındaki pikseller için "1" kullanmak için kullanırdım. Araç kutusundaki rasterden çokgene dönüştürme için bu ikili raster'i kullanın. burada çokgenin nasıl sıralanacağına dair bir cevap bulacaksınız

sonuçta bu adımlardan bir model oluşturabilirsiniz.


nibble veya ortaya çıkan şeylere bağlı olarak bazı inceltme işlevini kullanmak zorunda kalabilir, ancak bence @ kasapın cevabı işaret üzerindedir.
Roland

2

Conrec bunu yapar. Başlangıçta fortran ile yazılmıştı, bu yüzden birkaç kez taşındı.

Node.js, çim üzerinde çalıştığım bir kütüphane , nokta vektör verilerine dayanarak bu konturları oluşturmak için bu algoritmayı kullanır. Bunu yapmak için komut dosyası oldukça basit ve temelde şöyle olurdu:

var t = require('turf')
var fs = require('fs')
var z = 'elevation'
var resolution = 15
var breaks = [.1, 22, 45, 55, 65, 85,  95, 105, 120, 180]

t.load('./path/to/points.geojson', function(err, points){
  t.contour(points, z, resolution, breaks, function(err, contours){
    if(err) throw err
    fs.writeFileSync('.path/to/output.geojson', contours)
  })
})

Aklınızda belirli molalar yoksa jenks doğal molalar da oluşturabilirsiniz:

var t = require('turf')
var propertyName = 'elevation'
var num = 10

t.load('./path/to/points.geojson', function(err, pts){
  if(err) throw err
  t.jenks(pts, 'elevation', num, function(err, breaks){
    if(err) throw err
    console.log(breaks) // [ 11, 12, 18, 25, 29, 41, 50, 55, 76, 90, 143 ]
  })
})

1

Benim VA lidar giderseniz sitenin Breaklines ile bir proje için ve görünüm. Bizde çok var.

Örneğin 2010/2011 Onbir İlçe Kıyı VA Lidar. Tüm raporlara ve diğer belgelere bağlantılar görürsünüz ve bu, genellikle ArcGIS'te sınır çizgilerini nasıl oluşturduklarını açıklar. Farklı yöntemler için birkaç farklı proje deneyin, ancak bir DEM'den türetilen sırtlar gibi NHD'nin sıklıkla kullanıldığını söyleyebilirim. Raporlar çoğunlukla meta verilerdedir. İşte bir yukarıdaki için. CTRL F Pdf'deki kesme çizgileri.

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.