J'ai eu un succès limité en créant des polygones de contour lisses à partir de couches raster.
J'ai créé des courbes de niveau et des polylignes limites, puis j'ai utilisé QGIS Union. Ensuite, j'utilise QGIS Polygonize. Utilisez ensuite les statistiques zonales du raster d'origine pour obtenir la valeur des polygones.
La deuxième méthode que j'ai essayée était de convertir le raster en polygone. Créez ensuite une nouvelle colonne d'attributs arrondie au contour que je souhaite. Ensuite, je dissous les lignes entre la même valeur. Utilisez ensuite v.generalize. Cette méthode est un peu plus rapide, mais elle laissera certains polygones dentelés / non lissés.
Existe-t-il une méthode plus simple qui fonctionne tout le temps. Il semble qu'il devrait y avoir une commande simple qui effectue tout le processus.
Réponses:
J'ai rencontré les mêmes problèmes que vous rencontrez dans votre deuxième méthode. J'ai exporté un raster vers un vecteur et j'essaie d'utiliser v.generalise et j'obtiens principalement des polygones lisses avec la frontière occasionnelle `` en escalier '' qui ne semble pas avoir été affectée par l'algorithme.
J'ai trouvé un processus qui a fonctionné pour ma tâche, je ne sais pas si c'est la meilleure façon, mais j'ai pensé le partager au cas où cela vous aiderait.
Ce que j'ai commencé était une grille ascii de BoM qui ressemblait à ceci:
Ce que je voulais quelque chose de similaire à ce que BoM produit comme ça:
J'ai pu arriver à un résultat (dont j'étais satisfait) en utilisant les étapes suivantes.
Après le style, ma sortie est ci-dessous:
J'aimerais également savoir si quelqu'un connaît une manière plus simple. À l'origine, je pensais comme @Rx_ que je pouvais simplement convertir mon raster en vecteur puis généraliser et j'aurais fini. Ce que je devais faire était beaucoup plus long.
la source
J'aime les réponses ici, mais je ne peux pas croire que QGIS ne dispose toujours pas d'un moyen rapide et facile de le faire. MapInfo peut générer des contours sous forme de polygones ou de lignes avec n'importe quel intervalle que vous pouvez spécifier.
Cela semble être une tâche aussi fondamentale et également importante pour obtenir des extensions. Si quelqu'un a un moyen mis à jour ou plus rapide de le faire, partagez-le!
la source
Une manière plus directe consiste à utiliser
gdal_countour
directement (en tant que programme en ligne de commande) en "mode polygonal" (c'est-à-dire avec l'-p
option).Exemple:
Documentation: https://gdal.org/programs/gdal_contour.html
Cette option est disponible uniquement dans la version> = 2.4 (cela peut être vérifié avec
gdalinfo --version
). Si vous utilisez Ubuntu 18.4, vous devrez peut-être l'installer à partir d' UbuntuGISla source
Dans QGIS 3.8, vous pouvez utiliser Raster - Extraction - Contour
Il y a un bon exemple ici https://support.dronesmadeeasy.com/hc/en-us/articles/217759823-Using-QGIS-to-make-custom-Contour-Maps
la source