Différents styles de couches à différentes échelles dans QGIS?

8

Je voudrais pouvoir montrer un style de base pour une couche à grande échelle, par exemple à l'échelle de GB, avec tous les polygones identiques, mais pour que cela change à une échelle plus petite, par exemple 1: 25K, pour différencier les polygones.

Idéalement, j'aimerais pouvoir le faire sans changer le style / charger un style enregistré, chaque fois que je change d'échelle.

Est-ce possible?

JimS-W
la source
3
Ouvrez les mêmes données que deux couches distinctes et définissez les plages d'échelles à partir de la visibilité dépendante de Propriétés-Échelle générale afin qu'une seule couche soit visible à n'importe quelle échelle.
user30184
Bienvenue sur gis.stackexchange! Veuillez noter qu'une bonne question sur ce site devrait montrer un certain degré de recherche de votre part, c'est-à-dire ce que vous avez essayé et - le cas échéant - le code jusqu'à présent. Pour plus d'informations, vous pouvez consulter notre FAQ .
underdark

Réponses:

19

Oui c'est possible.

Ce dont vous avez besoin est un style basé sur des règles avec une règle d'échelle comme indiqué dans l'image (désolé pour la mise en page allemande) entrez la description de l'image ici

Cela ressemble à ceci lorsque vous effectuez un zoom avant ou arrière: entrez la description de l'image ici gardez à l'esprit que lorsque vous effectuez un zoom arrière sur les niveaux de zoom définis, le calque ne sera pas affiché.

ÉDITER:

Pour avoir différents styles dans une catégorie, vous pouvez affiner les règles en cliquant avec le bouton droit sur une règle -> Ajouter une échelle et définir différentes échelles. Pour que cela fonctionne, vous devez rendre la "règle parente", qui définit les classes transparentes.

Pour que le calque soit identique, vous pouvez ajouter une règle sans filtre et définir l'échelle pour qu'elle soit plus petite que les échelles définies par les classes (voir l'image 3 pour la configuration et l'image 4 pour le résultat)

entrez la description de l'image ici

résultat: entrez la description de l'image ici

Rire
la source
C'est bien merci. Est-il possible de «catégoriser» ensuite les polygones par un champ, dans l'option basée sur les règles? Je vais potentiellement afficher des dizaines de polygones à la fois, et j'aimerais pouvoir les classer de sorte que chacun soit d'une couleur différente, sans avoir à changer la couleur de chaque polygone / champ manuellement.
JimS-W
1
@ JimS-W oui c'est ce que j'ai fait avec la règle "id" = 1, "id" = 2 et ainsi de suite. L'ID peut être n'importe quel champ de votre fichier de formes (voir ma modification)
LaughU
Merci @LaughU. J'ai constaté qu'il était possible de faire ce que je cherchais en affinant les règles (dans l'option basée sur les règles) en cliquant avec le bouton droit sur une règle -> Affiner la règle actuelle -> Ajouter des catégories à la règle, puis en classant par fonctionnalité ID. Malheureusement, il semble que cela ne sera pas utilisable pour cette couche particulière, car il y a tellement de polygones qu'il continue de planter QGIS, mais il sera très utile pour les autres couches sur lesquelles je travaille.
JimS-W
"Gardez à l'esprit que lorsque vous effectuez un zoom arrière sur les niveaux de zoom définis, le calque ne sera pas affiché." QGIS a-t-il une fonctionnalité «autrement» ou «par défaut» pour ce cas?
jpmc26
1
@ jpmc26 Je ne sais pas si QGIS a une valeur par défaut mais une solution de contournement pourrait être d'envelopper vos niveaux de zoom avec quelque chose comme de 1: 100.000 à 1: 100.000.000 pour vous assurer qu'il sera affiché à une échelle raisonnable, peu importe jusqu'où vous faites un zoom arrière
LaughU