Je cartographie une chaîne de montagnes escarpée. Mon intervalle de contour principal est de 50 m et mon intervalle de contour intermédiaire est de 10 m. Dans les zones escarpées, l'intervalle de 10 m est trop petit, je dois donc quitter l'intervalle de 10 m et utiliser 20 m ou 25 m à la place.
Existe-t-il un moyen de le faire automatisé dans QGIS , SAGA GIS ou GRASS GIS ?
Pour autant que je sache, il n'y a pas de solution automatique dans QGIS pour ce problème. Cependant, il devrait être possible d'utiliser le moteur de rendu basé sur des règles pour spécifier les contours à tracer et ceux à laisser de côté.
la source
Si je comprends bien le problème, vous travaillez avec un fichier de formes qui a déjà généré tous les contours. Vous devriez avoir une table attributaire avec les valeurs de contour comme l'un des champs - par exemple, 'contour':
Dans QGIS, vous pouvez faire deux ou trois choses. L'une consiste à créer une copie du Shapefile, puis à supprimer les contours dont vous ne voulez pas:
contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
(ce type de fonction «d'appariement» n'est pas joli , mais QGIS n'a pas la fonction mathématique modulo qui rendrait cela plus agréable - je pense).La deuxième option consisterait simplement à ne pas afficher les contours que vous ne souhaitez pas afficher. C'est un peu plus élégant.
contour LIKE '%00' OR contour LIKE '%20' OR contour LIKE '%40' OR contour LIKE '%60' OR contour LIKE '%80'
À ce stade, les seuls contours affichés seront ceux qui correspondent à l'expression.
La grande chose à propos de la deuxième option est que vous pouvez créer des règles pour différentes échelles - vous pouvez avoir une règle lorsque vous effectuez un zoom arrière au-delà d'une certaine échelle qui montre, peut-être, uniquement les contours de 100 mètres ('% 00' uniquement dans le expression), puis une autre règle qui affiche les contours de 20 mètres lors d'un zoom avant, etc.
Si vous cherchez une méthode pour créer un nouveau contour de 25 m entre les contours de 100 m, vous feriez probablement mieux de créer un nouveau fichier de contour à partir d'un modèle d'élévation numérique. Je ne sais pas s'il existe des méthodes permettant d' interpoler de manière fiable et correcte un nouveau contour de 25 m entre d'autres contours.
la source
Voici comment je fais cela lorsque j'ai un fichier de formes de contour (ou une base de données Spatialite) contenant des contours à des intervalles verticaux de 10 mètres et que je souhaite tracer uniquement les contours qui se produisent à (disons) des intervalles de 50 mètres.
Chargez le fichier de formes et interrogez-le à l'aide de ce fragment de SQL: '(ELEV% 50) = 0'. Où 'ELEV' est l'attribut contenant les données d'élévation.
la source