Outdated version of the documentation. Find the latest one here.

Fenêtre Propriétés d’une couche vecteur

La fenêtre Propriétés de la couche pour une couche vectorielle fournit des informations sur la couche, les paramètres de représentation et les options d’étiquetage. Si votre couche a été chargée depuis une base PostgreSQL/PostGIS, vous pouvez également modifier la requête SQL d’appel de la couche, en l’éditant dans la fenêtre Constructeur de requête de l’onglet Général. Pour accéder à la fenêtre Propriétés de la couche, double-cliquez sur la couche dans la légende ou faites un clic droit sur la couche et sélectionnez Propriétés dans le menu qui apparait.

Figure Vector Properties 1:

../../../_images/vector_general_menu.png

Fenêtre de Propriétés d’une couche vecteur nix

Onglet Style

L’onglet Style fournit un outil complet pour le rendu et la gestion de la sémiologie des couches vectorielles. Il permet de gérer le Rendu de couche ‣, avec un ensemble d’outils communs à tous les types de couche, et la sémiologie, avec des outils spécifiques à chaque type de couche.

Rendu de couche

  • Transparence de la couche slider : permet de rendre visible les couches situées en dessous. Utiliser le curseur pour adapter la visibilité de la couche vectorielle à vos besoins. Vous pouvez également définir directement le pourcentage de transparence dans la zone de texte située à côté.

  • Layer blending mode: you can achieve special rendering effects with these tools that you previously only know from graphics programs. The pixels of your overlaying and underlaying layers are mixed through the settings described below.
    • Normal : il s’agit du mode de fusion standard qui utilise la valeur de transparence (canal alpha) du pixel supérieur pour le fusionner avec le pixel sous-jacent, les couleurs ne sont pas mélangées.

    • Lighten: It selects the maximum of each component from the foreground and background pixels. Be aware that the results tend to be jagged and harsh.
    • Screen: Light pixels from the source are painted over the destination, while dark pixels are not. This mode is most useful for mixing the texture of one layer with another layer. E.g. you can use a hillshade to texture another layer
    • Dodge: Dodge will brighten and saturate underlying pixels based on the lightness of the top pixel. So brighter top pixels cause the saturation and brightness of the underlying pixels to increase. This works best if the top pixels aren’t too bright, otherwise the effect is too extreme.
    • Addition: This blend mode simply adds pixel values of one layer with the other. In case of values above 1 (in the case of RGB), white is displayed. This mode is suitable for highlighting features.
    • Darken: Creates a resultant pixel that retains the smallest components of the foreground and background pixels. Like lighten, the results tend to be jagged and harsh
    • Multiply: It multiplies the numbers for each pixel of the top layer with the corresponding pixel for the bottom layer. The results are darker pictures.
    • Burn: Darker colors in the top layer causes the underlying layers to darken. Can be used to tweak and colorise underlying layers.
    • Overlay: Combines multiply and screen blending modes. In the resulting picture light parts of the picture become lighter and dark parts become darker.
    • Soft light: Very similar to overlay, but instead of using multiply/screen it uses color burn/dodge. This one is supposed to emulate shining a soft light onto an image.
    • Hard light: Hard light is very similar to the overlay mode. It’s supposed to emulate projecting a very intense light onto an image.
    • Difference: Difference subtracts the top pixel from the bottom pixel or the other way round, to always get a positive value. Blending with black produces no change, as values for all colors are 0.
    • Subtract: This blend mode simply subtracts pixel values of one layer with tshe other. In case of negative values, black is displayed.

Depuis la version 2.0 de QGIS, l’ancien système de symbologie n’est plus disponible et le nouveau système a été complètement revu.

Modes de rendu

The renderer is responsible for drawing a feature together with the correct symbol. There are four types of renderers: single symbol, categorized, graduated and rule-based. There is no continuous color renderer, because it is in fact only a special case of the graduated renderer. The categorized and graduated renderer can be created by specifying a symbol and a color ramp - they will set the colors for symbols appropriately. For point layers there is a point displacement renderer available. For each data type (points, lines and polygons) vector symbol layer types are available. Depending on the chosen renderer, the Style menu provides different following sections. On the bottom right of the symbology dialog there is a [Symbol] button which gives access to the Style Manager (see Section vector_style_manager). The Style Manager allows you to edit and remove existing symbols and add new ones.

Astuce

Sélectionner et modifier plusieurs symboles

Il est possible de sélectionner plusieurs symboles, de faire un clic-droit dessus et de changer d’un coup leur couleur, leur transparence, leur taille ou leur épaisseur.

Symboles uniques

Le mode de rendu en symbole unique est utilisé pour représenter toutes les entités de la couche de la même façon, définie par l’utilisateur. Les propriétés, qui peuvent être ajustées dans l’onglet Style, dépendent du type de géométrie de la couche, mais partagent une structure similaire. En haut à gauche figure un aperçu du symbole tel qu’il apparaîtra. A droite est affichée la liste des symboles déjà existants pour le style courant, prêts à être sélectionnés d’un simple clic. Le symbole courant peut être modifié en utilisant les outils à droite de l’aperçu.

Si vous cliquez sur le premier niveau de la liste Couche de symboles, sur la gauche, il est possible de choisir un certain nombre de paramètres basiques comme la Taille, la Transparence, la Couleur ou l’angle de Rotation. Ces paramètres s’appliquent à toutes les couches de symboles.

Figure Symbology 1:

../../../_images/singlesymbol_ng_line.png

Propriétés “Symbole Unique” de ligne nix

Des réglages plus détaillés sont accessibles en cliquant sur le deuxième niveau dans le cadre Couches de symboles. Vous pouvez définir des Couches de symboles qui seront combinées par la suite. Un symbole peut être constitué de plusieurs Couches de symboles. Les options suivantes sont possibles :

  • Type de symbole: Vous avez la possibilité entre Symbole d’ellipse, Symbole de police, Symbole simple, Symbole SVG et Symbole de champ vectoriel

  • Taille

  • Angle
  • Couleurs

  • Largeur du contour

  • Décalage X,Y : vous pouvez déplacer les symboles en x ou y

Note that once you have set the size in the lower levels the size of the whole symbol can be changed with the Size menu in the first level again. The size of the lower levels changes accordingly while the size ratio is maintained. After having done any needed changes, the symbol can be added to the list of current style symbols (using the [Symbol] selectstring Save in symbol library) and then easily be used in the future. Furthermore you can use the [Save Style] selectstring button to save the symbol as a QGIS layer style file (.qml) or SLD file(.sld). Currently in version 2.0 SLDs can be exported from any type of renderer: single symbol, categorized, graduated or rule-based, but when importing an SLD, either a single symbol or rule-based renderer is created. That means that categorized or graduated styles are converted to rule-based. If you want to preserve those renderers, you have to stick to the QML format. On the other hand, it could be very handy sometimes to have this easy way of converting styles to rule-based.

With the Style manager from the [Symbol] selectstring menu you can administrate your symbols. You can mActionSignPlus add item, editedit item, mActionSignMinus remove item and user share item. ‘Marker’ symbols, ‘Line’ symbols, ‘Fill’ patterns and ‘Color ramps’ can be used to create the symbols (see defining_symbols). The symbols are assigned to ‘All Symbols’, ‘Groups’ or ‘Smart groups’ then.

Symboles catégorisés

Le rendu Catégorisé est utilisé pour représenter toutes les entités d’une couche classées par catégorie qui dépend d’un des attributs de l’entité. L’onglet Style permet de sélectionner :

  • l’attribut (en choisissant parmi la liste des colonnes)

  • le symbole (en utilisant la fenêtre de Sélection de symbole)

  • les couleurs (en utilisant la liste de palettes de couleur)

Le bouton [Avancé] dans le coin inférieur droit de la fenêtre permet de choisir un champ pour faire varier l’angle de rotation et la taille des symboles. Tous les champs de la couche sont alors disponibles, même s’ils ne sont pas utilisés pour le rendu par catégorie.

L’exemple de la figure figure_symbology_2 montre le rendu des catégories de la couche des rivières de l’échantillon de données de QGIS.

Figure Symbology 2:

../../../_images/categorysymbol_ng_line.png

Options du mode de rendu Catégorisé nix

Vous pouvez créer des palettes de couleur personnalisées en choisissant Nouvelle palette de couleur... depuis la liste déroulante Palette de couleur. Une fenêtre vous propose alors de choisir entre différents types de palette : Dégradé, Aléatoire, Mélangeur de couleur ou cpt-city. Les trois premiers permettent de choisir le nombre de couleurs et leurs positions dans la palette. Voir figure_symbology_3 pour un de ces exemples de palette et figure_symbology_3a pour les palettes de type cpt-city.

Figure Symbology 3:

../../../_images/customColorRampGradient.png

Exemple de personnalisation de palette de couleurs graduées avec arrêts multiples nix

Le type cpt-city ouvre une fenêtre qui permet de choisir parmi des centaines de palettes prédéfinies.

Figure Symbology 3a:

../../../_images/cpt-cityColorRamps.png

Fenêtre cpt-city et ses centaines de palettes de couleur nix

Symboles gradués

Le rendu gradué est utilisé pour afficher toutes les entités d’une couche, en utilisant un symbole de couche défini par l’utilisateur dont la couleur reflètera la plage d’appartenance d’une valeur d’un attribut (p. ex. une plage d’altitude de 0 à 100m).

Figure Symbology 4:

../../../_images/graduatesymbol_ng_line.png

Options du mode de rendu Gradué nix

De la même manière que le rendu catégorisé, il est possible de faire varier l’angle de rotation et la taille des symboles selon les valeurs des champs spécifiés.

De la même façon que le rendu catégorisé, l’onglet Style vous permet de modifier les points suivants :

  • l’attribut (en choisissant parmi la liste des colonnes)

  • le symbole (en utilisant le bouton changer)

  • la couleur (en utilisant la liste des palettes de couleur)

De plus, vous pouvez choisir le nombre de classes et la méthode de classification. Les modes disponibles sont :

  • Intervalles égaux

  • Quantiles

  • Ruptures naturelles (Jenks)

  • Écart-type

  • Jolies ruptures (“Pretty” de R)

La zone de liste dans la partie centrale du menu Style répertorie les classes ainsi que leurs étendues, étiquettes et symboles de rendu.

L’exemple de la figure figure_symbology_4 montre le rendu gradué de la couche des rivières de l’échantillon de données de QGIS.

Rendu basé sur un ensemble de règles

Ce moteur de rendu est utilisé pour afficher toutes les entités d’une couche en utilisant un ensemble de règles prédéfinies dont la couleur reflète la manière dont une entité a été classée en fonction de ses attributs. Les règles sont définies par des expressions SQL. La fenêtre permet de regrouper les règles par type de filtre ou échelle de validité. Vous pouvez activer le rendu selon les niveaux de symboles ou arréter le rendu à la première règle validée pour chaque entité.

L’exemple de la figure figure_symbology_5 montre le rendu basé sur des règles pour la couche des rivières de l’échantillon de données de QGIS.

Pour créer une règle, Activez une ligne existante en cliquant dessus ou cliquez sur ‘+’ puis sur la nouvelle règle. Appuyez ensuite sur le bouton [Editer]. Dans la fenêtre de Propriétés de la règle, vous pouvez définir une étiquette pour la règle. Appuyez sur le bouton browsebutton pour ouvrir la fenêtre de constructeur de chaine d’expression. Dans la Liste de fonctions, cliquez sur Champs et Valeurs pour voir tous les attributs de la couche. Pour ajouter un attribut dans le champ Expression de la calculatrice, faites un double-clic sur ce champ dans la liste. En général, vous pouvez utiliser les différents champs, valeurs et fonctions listés pour construire votre expression de calcul ou vous pouvez juste la saisir dans la boîte (voir Calculatrice de champ).

Figure Symbology 5:

../../../_images/rulesymbol_ng_line.png

Options du mode de rendu par Ensemble de Règles nix

Déplacement de point

Le rendu de déplacement de point offre une visualisation de tous les points d’une couche, même si ceux-ci se superposent. Pour se faire, les symboles des points sont répartis en cercle autour d’un symbole central.

Figure Symbology 6:

../../../_images/poi_displacement.png

Fenêtre Déplacement de points nix

Astuce

Exporter le style d’une couche vecteur

You have the possibility to export vector symbology from QGIS into the Google .kml, *.dxf and MapInfo.tab files. Just open the right mouse menu of the layer and click on Save selection as ‣ to define the name of the output file and its format. Use the Symbology export menu to save the symbology either as Feature symbology ‣ or as Symbol layer symbology ‣. If you have used symbol layers it is recommended to use the second setting.

Onglet Étiquettes

Le moteur d’mActionLabeling Étiquettes fournit un système d’étiquetage intelligent pour les couches de points, lignes et polygones et ne nécessite que peu de paramètres. Ce nouveau système gère les couches reprojetées à la volée. Les fonctionnalités principales ont été re-designées et QGIS 2.0. en propose de nouvelles qui améliorent l’étiquetage. Les menus suivants ont été créés :

  • Texte

  • Formatage

  • Tampon

  • Fond

  • Ombre

  • Emplacement

  • Rendu

Voyons ce que l’on peut faire avec les nouveaux onglets pour chaque type de couche.

Étiqueter une couche de points

Lancez QGIS et chargez une couche vectorielle de points. Sélectionnez la couche dans la légende et cliquez sur le bouton mActionLabeling Paramètres d’étiquetage de la couche de la barre d’outils QGIS.

La première étape consiste à cocher la case checkbox Etiqueter cette couche avec et à sélectionner un champ attributaire à utiliser pour l’étiquette. Cliquez sur mActionmIconExpressionEditorOpen si vous souhaitez définir les étiquettes en vous basant sur des expressions.

Les étapes présentées ci-dessous décrivent un étiquetage simple, sans utilisation des fonctions de Valeurs définies par les données situées à droite des paramètres à définir.

You can define the text style in the Text menu (see Figure_labels_1 ). A new function is the Type case option where you can influence the text rendering. You have the possibility to render the text ‘All uppercase’, ‘All lowercase’ or ‘Capitalize first letter’. Also, a new function in QGIS 2.0 is the use of blend modes (see blend_modes).

Dans le menu Formatage, vous pouvez définir un caractère de retour à la ligne afin de découper l’étiquette sur de multiples lignes. Utilisez l’option checkbox Nombres formatés pour formater les valeurs numériques de la table attributaire. Les chiffres après la virgule sont insérés. L’activation de cette option ajoute par défaut trois chiffres après la virgule.

Pour créer un tampon, cochez simplement la case checkbox Afficher un tampon depuis le menu Tampon. La couleur du tampon est personnalisable et une des nouvelles fonctionnalités de QGIS 2.0 permet d’appliquer un mode de fusion (voir blend_modes).

If the checkbox Color buffer’s fill checkbox is activated, it will interact with partially transparent text and give mixed color transparency results. Turning off the buffer fill fixes that issue (except where the interior aspect of the buffer’s stroke intersects with the text’s fill) and also allows the user to make outlined text.

Dans le menu Fond, vous pouvez définir la forme de votre arrière-plan avec Taille X et Taille Y. Utilisez Taille selon pour ajouter une zone de ‘Tampon’ à votre arrière-plan. La taille du tampon est définie par défaut ici. Le fond est alors constitué de la zone tampon et du fond défini par les valeurs Taille X et Taille Y. Vous pouvez aussi définir une Rotation correspondant à ‘Angle de l’étiquette’, ‘Angle par rapport à l’étiquette’ ou encore ‘Valeurs fixes’. Définissez un Décalage X,Y avec les valeurs X et Y et le fond sera déplacé. En appliquant Angles arrondis X,Y, l’arrière-plan s’arrondit aux angles. Il est également possible de fusionner le fond avec les couches sous-jacentes dans la fenêtre de carte en utilisant le Mode de fusion (voir blend_modes).

Use the Shadow menu for a user-defined Drop shadow. The drawing of the background is very variable. Choose between ‘Lowest label component’, ‘Text’, ‘Buffer’ and ‘Background’. The Offset angle depends on the orientation of the label. If you choose the checkbox Use global shadow checkbox then the zero point of the angle is always oriented to the north and doesn’t depend on the orientation of the label. Influence the appearance of the shadow with the Blur radius. The higher the number, the softer the shadows.

L’apparence de l’ombre portée peut également être modifiée en choisissant un mode de fusion (voir blend_modes).

Sélectionnez le menu Emplacement pour définir la position de l’étiquette et les priorités d’étiquetage. L’option radiobuttonon Autour du point offre maintenant la possibilité d’utiliser les Quadrants pour placer l’étiquette. En outre, vous pouvez modifier l’orientation de l’étiquette avec l’option Rotation. Ainsi, un placement dans un quadrant donné avec une rotation donnée est désormais possible.

In the Rendering menu you can define label and feature options. In the Label options you find the scale-based visibility setting now. You can prevent QGIS from rendering only selected labels with the checkbox Show all labels for this layer (including colliding labels) checkbox. In the Feature options you can define if every part of a multipart feature is to be labeled. In QGIS 2.0 now it’s possible to define if the number of features to be labeled is limited and to checkbox Discourage labels from covering features.

Figure Labels 1:

../../../_images/label_points.png

Étiquetage d’une couche vectorielle de points nix

Étiqueter une couche de lignes

La première étape consiste à cocher la case checkbox Etiqueter cette couche avec dans l’onglet Étiquettes et à sélectionner un champ attributaire à utiliser pour l’étiquette. Cliquez sur mActionmIconExpressionEditorOpen si vous souhaitez définir les étiquettes en vous basant sur des expressions.

Ensuite, vous pouvez définir le style de texte dans le menu Texte. Les options, identiques à celles proposées pour les couches de points, sont disponibles.

De même dans le menu Formatage, les paramètres sont identiques à ceux des couches de points.

Le menu Tampon offre les mêmes fonctions que celles définies dans la section labeling_point_layers .

Le menu Fond offre les mêmes entrées que celles définies dans la section labeling_point_layers .

Le menu Ombre offre les mêmes entrées que celles définies dans la section labeling_point_layers .

In the Placement menu you find special settings for line layers. The label can be placed radiobuttonon Parallel, radiobuttonoff Curved or radiobuttonoff Horizontal. With the radiobuttonon Parallel and radiobuttonoff Curved option come the following settings: You can define the position checkbox Above line, checkbox On line and checkbox Below line. It’s possible to select several options at once. QGIS will look for the optimal position of the label then. Remember that here you can also use the line orientation for the position of the label. Additionally you can define a Maximum angle between curved characters when selecting the radiobuttonoff Curved option (see Figure_labels_2 ).

Le menu Rendu offre presque les mêmes fonctions que celles définies pour les couches de points. Dans les Options des entités, vous pouvez maintenant Ne pas afficher d’étiquettes pour les entités plus petites que.

Figure Labels 2:

../../../_images/label_line.png

Étiquetage d’une couche vectorielle de lignes nix

Étiqueter une couche de polygones

La première étape consiste à cocher la case checkbox Etiqueter cette couche avec et à sélectionner un champ attributaire à utiliser pour l’étiquette. Cliquez sur mActionmIconExpressionEditorOpen si vous souhaitez définir les étiquettes en vous basant sur des expressions.

Le menu Texte définit le style de texte. Les options proposées sont identiques à celles des couches de points et de lignes.

Le menu :guilabel:`Formatage`permet de formater l’étiquette sur des lignes multiples comme pour les couches de points ou de lignes.

Comme pour les points et les lignes, vous pouvez définir une zone tampon autour du texte dans le menu Tampon.

Utilisez le menu Fond pour créer des arrière-plans personnalisés pour les étiquettes de polygones. Ce menu est identique à celui des couches de points ou de lignes.

Les entrées du menu Ombre sont identiques à celles des couches de points ou de lignes.

Le menu Emplacement propose des options spécifiques aux couches de polygones (voir Figure_labels_3). Il s’agit notamment de radiobuttonon Décalage par rapport au centroïde, radiobuttonoff Horizontal (lent), radiobuttonoff Autour du centroïde, radiobuttonoff Libre et radiobuttonoff Selon le périmètre.

Avec l’option radiobuttonon Décalage par rapport au centroïde, vous pouvez définir si le centroïde est celui du radiobuttonon polygone visible ou du radiobuttonoff polygone complet. Cela signifie que soit le centroïde utilisé correspond à celui de la portion de polygone qui apparaît dans votre carte, soit il est défini par rapport au polygone en entier, que vous l’ayez entièrement affiché dans votre carte ou pas. Vous pouvez placer l’étiquette selon les quadrants et définir un décalage et une rotation. L’option radiobuttonoff Autour du centroïde permet de placer l’étiquette autour du centroïde, à une certaine distance. Là encore, il y a la possibilité de définir si le centroïde est radiobuttonon polygone visible ou radiobuttonoff polygone complet. Avec l’option radiobuttonoff Selon le périmètre, vous pouvez définir une position et une distance de placement pour l’étiquette. Les positions possibles sont checkbox Au-dessus de la ligne, checkbox Sur la ligne, checkbox En-dessous de la ligne et checkbox Orientation de la ligne suivant la position.

Le sous-menu Rendu propose les mêmes fonctions que celles définies pour les couches de lignes. Dans les Options des entités, vous pouvez choisir de Ne pas afficher d’étiquettes pour les entités plus petites que.

Figure Labels 3:

../../../_images/label_area.png

Étiquetage d’une couche vectorielle de polygones nix

Utiliser des valeurs de paramètres définies par les données pour l’étiquetage

With the data-defined override functions the settings for the labeling are overwritten by entries in the attribute table. You can activate/deactivate the function with the right-mouse button. Hover over the symbol and you see the information about the data-defined override, including the current definition field. We now describe an example how to use the data-defined override function for the mActionMoveLabelMove label function (see figure_labels_4 ).

  1. Importez la couche lakes.shp depuis le jeu de données test de QGIS.

  2. Double-cliquez la couche pour ouvrir la fenêtre des propriétés. Sélectionnez Etiquettes puis Emplacement et enfin radiobuttonon Décalage par rapport au centroïde.

  3. Dans le cadre Défini par les données, cliquez sur l’icône mIconDataDefine pour définir le champ correspondant à la coordonnée. Choisissez ‘xlabel’ pour X et ‘ylabel’ pour Y. Les icônes revêtent maintenant une surbrillance jaune.

  4. Zoomez sur un lac.

  5. Sélectionnez l’outil mActionMoveLabel de la barre d’outils Etiquettes. Vous pouvez maintenant déplacer l’étiquette manuellement vers une autre position (voir figure_labels_5). La nouvelle position est sauvegardée dans les colonnes ‘xlabel’ et ‘ylabel’ de votre table attributaire.

Figure Labels 4:

../../../_images/label_data_defined.png

Étiquetage d’une couche vectorielle de polygones avec l’option ‘Défini par les données’ nix

Figure Labels 5:

../../../_images/move_label.png

Déplacer des étiquettes nix

Onglet Champs

attributes Le menu Champs permet de manipuler les champs attributaires du jeu de données sélectionné. Les boutons mActionNewAttribute Nouvelle colonne et mActionDeleteAttribute Supprimer la colonne peuvent être utilisés lorsque la couche est en mActionToggleEditing Mode édition.

Outils d’édition

Figure Fields 1:

../../../_images/editwidgetsdialog.png

Fenêtre d’édition d’une colonne attributaire nix

Dans le menu Champs se trouve également une colonne Outil d’édition. Cette colonne peut être utilisée pour définir des valeurs ou des plages de valeurs à utiliser pour ce champ précis de la table attributaire. Si vous cliquez sur [Outil d’édition], il s’ouvre une fenêtre de dialogue dans laquelle vous pouvez définir différentes modalités. Celles-ci sont :

  • Édition de ligne : un champ d’édition qui permet d’entrer du texte simple (ou de restreindre à des nombres pour des attributs de type numériques).

  • Classification : Affiche une liste déroulante avec les valeurs utilisées pour la classification, si vous avez choisi le style ‘Catégorisé’ dans l’onglet Style de la fenêtre de propriétés.

  • Plage : Permet de spécifier une plage de valeurs numériques disponibles. Il peut s’agir d’une barre coulissante ou d’une zone de texte éditable.

  • Valeurs uniques : L’utilisateur peut sélectionner l’une des valeurs déjà utilisées dans cette colonne. Une ligne est affichée avec le support de l’auto-complétion si la case ‘Éditable’ est cochée, une boîte de saisie est utilisée sinon.

  • Nom de fichier : Simplifie la sélection d’un fichier par l’ouverture d’un explorateur de fichiers.

  • Liste de valeurs : Liste déroulante avec des valeurs prédéfinies. La valeur est stockée dans l’attribut, la description est affichée dans la liste. Vous pouvez défninir des valeurs manuellement ou les charger depuis la couche ou depuis un fichier CSV.

  • Énumération : Ouvre une liste déroulante avec les valeurs qui peuvent être utilisées selon la définition du type de champ. Ce mode d’édition n’est actuellement disponible que pour les couches PostgreSQL.

  • Immuable : Un attribut immuable est en lecture seule. L’utilisateur ne pourra pas le modifier.

  • Cachée : Un attribut caché sera invisible. L’utilisateur ne pourra pas visualiser son contenu.

  • Case à cocher : Affiche une case à cocher et vous pouvez définir quelle valeur stocker quand la case est cochée ou pas.

  • Édition de texte : Ouvre une zone d’édition de texte permettant les retours à la ligne.

  • Calendrier : Ouvre un calendrier permettant de choisir une date. Le champ doit être de type texte.

  • Valeur relationnelle : Propose les valeurs stockées dans un champ d’une autre table. Vous choisissez la table, le champ clé et le champ de valeur.

  • Générateur d’UUID : Champ en lecture seule qui génère un UUID (Identifiant Unique Universel) lorsqu’il est vide.

  • Photo : Champ contenant le nom d’un fichier de photo. La largeur et la hauteur peuvent être précisées.

  • Vue web : Champ contenant une URL. La largeur et la hauteur sont variables.

  • Couleur : Champ contenant un code couleur. Au moment de la saisie du code, une barre permet de visualiser la couleur.

With the Attribute editor layout you can now define builtin forms for data entry jobs (see figure_fields_2). Choose ‘Drag and drop designer’ and an attribute column. Use the mActionSignPlus Icon to create a category that then will be shown during the digitizing session (see figure_fields_3). Next step will be to assign the relevant fields to the category with the mActionArrowRight Icon. You can create more categories and use the same fields again. When creating a new category QGIS will insert a new tab for the category in the built in form.

D’autres options de la fenêtre sont ‘Autogénérer’ et ‘Fournir fichier ui’. ‘Autogénérer’ crée juste des éditeurs avec tous les champs séparés par des tabulations. L’option ‘Fournir un fichier ui’ permet d’utiliser des formulaires plus complexes, réalisés avec Qt-Designer. L’utilisation d’un fichier -UI vous offre une grande liberté pour créer vos fenêtres. Des informations détaillées sont disponibles à http://nathanw.net/2011/09/05/qgis-tips-custom-feature-forms-with-python-logic/ .

Les fenêtres de QGIS peuvent être associées à une fonction python qui peut être appelée à l’ouverture de la fenêtre. Utilisez cette fonction pour ajouter des éléments supplémentaires à vos fenêtres. Un exemple est (dans le module MyForms.py):

def open(dialog,layer,feature):
geom = feature.geometry()
control = dialog.findChild(QWidged,"My line edit")

Reference in Python Init Function like so: MyForms.open

Le fichier MyForms.py doit être présent dans le PYTHONPATH, dans le dossier .qgis2/python ou dans le dossier du projet.

Figure Fields 2:

../../../_images/attribute_editor_layout.png

Fenêtre de création de catégories avec la Mise en page de l’éditeur d’attribut

Figure Fields 3:

../../../_images/resulting_feature_form.png

Resulting built in form in a data entry session

Onglet Général

general Utilisez cet onglet pour définir les paramètres généraux de la couche vecteur. Plusieurs options sont disponibles :

Informations sur la couche

  • Changez le nom affiché de la couche dans Nom de la couche

  • Définissez le fichier Source de la couche vectorielle

  • Définissez l’Encodage de la source des données pour spécifier le type d’encodage utilisé dans les données source et pour pouvoir les lire correctement

Système de Coordonnées de Référence

  • Specifier... le Système de Coordonnées de Référence. Ici vous pouvez visualiser ou modifier le SCR de la couche.

  • créer un Index Spatial (uniquement pour les formats supportés par OGR),

  • Mettre à jour l’emprise dans les informations de la couche,

  • Voir ou modifier la projection de la couche vecteur en cliquant sur Spécifier ...

checkbox Visibilité dépendante de l’échelle

  • Vous pouvez définir les échelles Maximum (inclusive) et Minimum (exclusive) de visualisation de la couche. Les échelles peuvent être définies via les boutons [Actuelle]

Sous-ensemble de la couche

Figure General 1:

../../../_images/vector_general_menu.png

Onglet Général de la fenêtre de propriétés d’une couche vecteur nix

Menu Affiché

mActionMapTips In QGIS 2.0 there is now an own menu for the map tips. It includes a new feature: Map Tip display text in HTML. While you can still choose a radiobuttonoff Field to be displayed when hovering over a feature on the map it is now possible to insert HTML code that creates a complex display when hovering over a feature. To activate Map Tips, select the menu option View ‣ MapTips.Figure Display 1 shows an example of HTML code.

Figure Display 1:

../../../_images/display_html.png

HTML code for map tip nix

Figure Display 2:

../../../_images/map_tip.png

Map tip made with HTML code nix

Onglet Actions

action QGIS est capable d’effectuer des actions basées sur les attributs d’une entité. Il peut s’agir de nombreuses actions, par exemple exécuter un programme avec des arguments construits à partir des attributs d’une entité, ou encore, passer des paramètres à un outil de publication de rapports sur internet.

Figure Actions 1:

../../../_images/action_dialog.png

Vue d’ensemble de la fenêtre Actions avec quelques exemples d’actions nix

Les actions sont utiles si vous voulez exécuter fréquemment une application externe ou charger une page web basée sur une ou plusieurs valeurs de votre couche vecteur. Il en existe 6 types qui peuvent être utilisés de la sorte :

  • Les actions Générique, Mac, Windows et Unix lancent un processus externe,

  • Les actions Python lancent un code python,

  • Les actions Générique et Python sont disponibles quel que soit le système d’exploitation,

  • Les actions Mac, Windows et Unix sont disponibles uniquement depuis les systèmes d’exploitation correspondants (c’est à dire que vous pouvez définir trois actions ‘Éditer’ qui ouvrent un éditeur et les utilisateurs ne verront que l’action correspondant à leur système d’exploitation).

Quelques exemples d’actions sont fournis. Vous pouvez les charger en cliquant sur [Ajouter les actions par défaut]. Un des exemples effectue une recherche basée sur la valeur d’un attribut. C’est ce qui est développé par la suite.

Définir des actions

Les actions sur les attributs sont définies depuis la fenêtre Propriétés de la couche vecteur. Pour définir une action, ouvrez la fenêtre Propriétés de la couche vecteur et cliquez sur le menu Actions. Allez à Propriétés de l’action. Sélectionner le type ‘Générique’ et fournissez un nom d’identification à l’action. Le texte de l’action doit lui-même contenir le nom de l’application qui sera exécutée lorsque l’action est invoquée. Vous pouvez ajouter un ou plusieurs champs en arguments pour l’application. Lorsque l’action est invoquée, tout jeu de caractères commençant par % suivi d’un champ sera remplacé par la valeur de ce champ. Les caractères spéciaux %% sont remplacés par la valeur du champ sélectionné dans la fenêtre Identifier les résultats ou dans la Table attributaire ( voir using_actions ci-après). Les guillemets double peuvent être utilisés pour regrouper le texte dans un argument unique pour l’application, le script ou le programme. Ils sont ignorés lorsque précédés d’un backslash.

Si vous avez des noms de champs qui sont contenus dans d’autres noms de champs (par exemple, col1 et col10), vous devez l’indiquer en entourant le nom de champ (le caractère %) par des crochets (par exemple [%col10]). Ceci évitera de prendre le nom de champ %col10 pour %col1 avec un 0 à la fin. Les crochets seront retirés quand QGIS substituera le nom par la valeur du champ. Si vous voulez que le champ à substituer soit entouré de crochets, utilisez un deuxième jeu de crochets comme ici : [[%col10]].

En utilisant l’outil Identifier les entités, vous ouvrez la fenêtre Résultats identifiés. Elle inclut une entrée (Dérivé) qui contient des informations pertinentes selon le type de couche. Les valeurs de cette entrée sont accessibles de la même manière que les autres champs en ajoutant (Derived). avant le nom du champ. Par exemple, une couche de points a un champ X et Y et leur valeur peut être utilisée dans l’action avec %(Derived).X et %(Derived).Y. Les attributs dérivés sont disponibles uniquement depuis la fenêtre Résultats identifiés et pas la Table d’attributs.

Deux exemples d’action sont proposés ci-dessous :

  • konqueror http://www.google.com/search?q=%nam
  • konqueror http://www.google.com/search?q=%%

Dans le premier exemple, le navigateur internet konqueror est lancé avec une URL. L’URL effectue une recherche Google sur la valeur du champ nam de la couche vecteur. Notez que l’application ou le script appelé par l’action doit être dans le path sinon vous devez fournir le chemin complet vers l’application. Pour être certain, nous pouvons réécrire le premier exemple de cette manière : /opt/kde3/bin/konqueror http://www.google.com/search?q=%nam. Ceci assurera que l’application konqueror sera exécutée quand l’action sera invoquée.

Le deuxième exemple utilise la notation %% dont la valeur ne dépend pas d’un champ en particulier. Quand l’action est invoquée, %% sera remplacé par la valeur du champ sélectionné dans les résultats de l’identification ou dans la table d’attributs.

Utiliser les actions

Les actions se lancent depuis la fenêtre Résultats identifiés, depuis la Table d’attributs ou depuis Exécuter l’action de l’entité (rappelez-vous que ces fenêtres s’ouvrent en cliquant sur mActionIdentify Identifier les entités, mActionOpenTable Ouvrir la table d’attributs ou mAction Exécuter l’action de l’entité). Pour lancer une action, faites un clic droit sur un enregistrement et choisissez l’action depuis le menu qui apparaît. Les actions sont listées dans le menu par le nom que vous leur avez donné en les définissant. Cliquez ensuite sur l’action que vous souhaitez lancer.

Si vous faites appel à une action qui utilise la notation %%, faites un clic droit sur la valeur du champ que vous souhaitez passer à l’application ou au script, dans la fenêtre Identifier les résultats ou dans la Table attributaire.

Voici un autre exemple qui récupère des données d’une couche vecteur et qui les insère dans un fichier utilisant bash et la commande echo (cela ne marchera que sur nix et peut-être osx). La couche en question a des champs pour le nom d’espèce taxon_name, la latitude lat et la longitude long. Je souhaiterais faire une sélection spatiale de localisations et exporter les valeurs des enregistrements sélectionnés dans un fichier texte (ils apparaissent en jaune sur la carte dans QGIS). Voici l’action qui permettra de le faire :

bash -c "echo \"%taxon_name %lat %long\" >> /tmp/species_localities.txt"

Après avoir sélectionné quelques localités et lancé l’action sur chacune, le fichier de destination ressemblera à ça :

Acacia mearnsii -34.0800000000 150.0800000000
Acacia mearnsii -34.9000000000 150.1200000000
Acacia mearnsii -35.2200000000 149.9300000000
Acacia mearnsii -32.2700000000 150.4100000000

Comme exercice, nous allons créer une action qui réalise une recherche Google sur la couche lakes. Tout d’abord, nous avons besoin de déterminer l’URL nécessaire pour effectuer une recherche sur un mot clé. Il suffit simplement d’aller sur Google et faire une recherche simple puis récupérer l’URL dans la barre d’adresse de votre navigateur. De cela, nous en déduisons la formulation : http://google.com/search?q=qgis, où qgis est le terme recherché. À partir de tout cela, nous pouvons poursuivre :

  1. Assurez-vous que la couche lakes est chargée.

  2. Ouvrez la fenêtre Propriétés de la couche en double cliquant sur la couche dans la légende ou en faisant un clic droit et en choisissant Propriétés dans le menu qui apparaît.

  3. Cliquez sur l’onglet Actions

  4. Entrez un nom pour l’action, par exemple Recherche Google.

  5. Pour l’action, nous devons fournir le nom du programme externe à lancer. Dans ce cas, nous allons utiliser Firefox. Si le programme n’est pas dans votre path, vous devez fournir le chemin complet.

  6. A la suite du nom de l’application externe, ajoutez l’URL utilisée pour faire la recherche Google, jusqu’au terme de recherche, mais sans l’ajouter : http://google.com/search?q=

  7. Le texte dans le champ Action devrait ressembler à ça : firefox http://google.com/search?q=

  8. Cliquez sur le menu déroulant contenant les noms des champs pour la couche lakes. Il est situé juste à gauche du bouton [Insérer un champ].

  9. Sélectionnez le champ ‘NAMES’ du menu déroulant et cliquez sur [Insérer un champ].

  10. Votre texte Action ressemble maintenant à :

    firefox http://google.com/search?q=%NAMES

  11. Pour finaliser l’action, cliquez sur le bouton [Ajouter l’action à la liste].

L’action est donc entièrement définie et prête à être utilisée. Le texte final de l’action devrait correspondre à ça :

firefox http://google.com/search?q=%NAMES

Nous pouvons maintenant utiliser l’action. Fermez la fenêtre Propriétés de la couche et zoomez sur une zone d’intérêt. Assurez-vous que la couche lakes est active puis identifiez un lac. Dans la fenêtre de résultats, vous constatez que notre action est maintenant visible :

Figure Actions 2:

../../../_images/action_identifyaction.png

Sélection de l’entité et choix de l’action nix

Quand vous cliquez sur l’action, cela ouvre Firefox et charge l’URL http://www.google.com/search?q=Tustumena. Il est également possible d’ajouter d’autres champs attributs à l’action. Pour faire cela, vous pouvez ajouter un + à la fin du texte de l’action, sélectionnez un autre champ et cliquez sur [Insérer un champ]. Dans cet exemple, la recherche sur un autre champ n’aurait pas de sens.

Vous pouvez définir de multiples actions pour une couche et chacune apparaitra dans la fenêtre Résultats identifiés.

Vous pouvez imaginer toute sorte d’utilisations pour ces actions. Par exemple, si vous avez une couche de points contenant la localisation d’images ou de photos ainsi qu’un nom de fichier, vous pouvez créer une action qui lancera un visualiseur pour afficher les images. Vous pouvez également utiliser les actions pour lancer des rapports sur internet pour un champ attributaire ou une combinaison de champs, en les spécifiant de la même manière que dans l’exemple d’une recherche Google.

Nous pouvons également fournir des exemples plus complexes, notamment sur la manière d’utiliser des actions Python.

D’ordinaire lorsque l’on crée une action pour ouvrir un fichier avec une application externe, on peut utiliser un chemin absolu ou relatif. Dans ce dernier cas, le chemin dépend donc de l’emplacement du fichier d’exécution du programme externe. Mais si nous souhaitons utiliser des chemins relatifs à la couche sélectionnée (stockée sous forme de fichier comme un shapefile ou une base spatialite) ? Le code suivant permet de le faire :

command = "firefox";
imagerelpath = "images_test/test_image.jpg";
layer = qgis.utils.iface.activeLayer();
import os.path;
layerpath = layer.source() if layer.providerType() == 'ogr' \
  else (qgis.core.QgsDataSourceURI(layer.source()).database() \
  if layer.providerType() == 'spatialite' else None);
path = os.path.dirname(str(layerpath));
image = os.path.join(path,imagerelpath);
import subprocess;
subprocess.Popen( [command, image ] );

Il faut simplement se rappeler qu’il s’agit d’une action Python et qu’il faut modifier les variables command et imagerelpath selon vos besoins.

Et si le chemin relatif doit dépendre du fichier de projet (sauvegardé) ? Le code de l’action Python deviendra :

command="firefox";
imagerelpath="images/test_image.jpg";
projectpath=qgis.core.QgsProject.instance().fileName();
import os.path; path=os.path.dirname(str(projectpath)) if projectpath != '' else None;
image=os.path.join(path, imagerelpath);
import subprocess;
subprocess.Popen( [command, image ] );

Un autre exemple d’action Python consiste à ajouter de nouvelles couche au projet. L’exemple qui suit montre comment ajouter une couche vecteur et un raster. Les noms des fichiers à ajouter au projet et les noms à donner aux couches dépendent de données attributaires (filename et layname sont deux champs de la table attributaire de la couche sur laquelle l’action est créée) :

qgis.utils.iface.addVectorLayer('/yourpath/[% "filename" %].shp','[% "layername" %]',\
  'ogr')

Pour ajouter un raster (ici une image tif), cela devient :

qgis.utils.iface.addRasterLayer('/yourpath/[% "filename" %].tif','[% "layername" %]')

Onglet Jointures

join L’onglet Jointures permet de joindre une table attributaire chargée à une couche vecteur chargée. Après avoir cliqué sur le bouton mActionSignPlus, la fenêtre Ajouter une jointure vectorielle apparaît. Vous devez définir une couche de jointure à connecter à la couche cible, un champ de jointure qui correspond à un champ de la table à joindre et un champ cible provenant de la table attributaire de la couche cible. Il en résulte que tout les champs de la table à joindre seront affichés en plus des champs de la table cible.

Actuellement, QGIS gère les jointures de tables non spatiales aux formats pris en charge par OGR (par exemple CSV, DBF, Excel), au format texte délimité et issues de PostgreSQL (voir figure_joins_1).

Figure Joins 1:

../../../_images/join_attributes.png

Joindre une table attributaire à une couche vectorielle existante nix

De plus, la fenêtre de jointure permet de :

  • checkbox Mettre la couche jointe en cache dans la mémoire virtuelle

  • checkbox Créer un index des attributs joins

Onglet Diagrammes

diagram L’onglet Diagrammes permet d’ajouter une couche de graphiques sur une couche vecteur (voir figure_diagrams_1).

Cet onglet permet de générer des diagrammes circulaires, textes et des histogrammes.

L’onglet est subdivisé en quatre sous-onglets : Apparence, Taille, Postion et Options.

In the case of the text diagram and piechart text values of different data columns are displayed one below the other with a circle or a box and dividers. In the Size tab diagram size is based on a fixed size or on linear scaling according to a classification attribute. The placement of the diagrams which is done in the Position tab interacts with the new labeling, so position conflicts between diagrams and labels are detected and solved. In addition to chart positions can be fixed by the users hand.

Figure Diagrams 1:

../../../_images/diagram_tab.png

Onglet Diagrammes de la fenêtre de propriétés d’une couche vecteur nix

Nous allons vous montrer un exemple en superposant dans les frontières de l’Alaska des données concernant la température issues d’une couche vecteur portant sur le climat. Toutes ces couches sont disponibles dans l’échantillon de données QGIS (voir Section Échantillon de données).

  1. Cliquez sur l’icône mActionAddOgrLayer Ajouter une couche vecteur, parcourez le répertoire de l’échantillon QGIS et chargez les couches alaska.shp et climate.shp.

  2. Double-cliquez sur la couche climate dans la légende pour ouvrir la fenêtre de Propriétés de la Couche.

  3. Cliquez sur l’onglet Diagrammes, activez la case checkbox Afficher les diagrammes et choisissez ‘Diagramme texte dans la liste déroulante |selectstring|`Type de diagramme`.

  4. Dans l’onglet Apparence, nous choisissons le bleu clair comme couleur de fond et définissons une taille fixe de 18 mm dans l’onglet Taille.

  5. Dans l’onglet Position, l’emplacement défini est Autour du point.

  6. Sur le diagramme, nous souhaiterions afficher les valeurs de trois colonnes T_F_JAN`, T_F_JUL et T_F_MEAN. D’abord, sélectionnez T_F_JAN de la colonne Attributs et cliquez sur le bouton mActionSignPlus puis T_F_JUL et enfin T_F_MEAN.

  7. Cliquez maintenant sur [Appliquer] pour afficher les diagrammes sur la carte.

  8. Vous pouvez maintenant adapter la taille du graphique dans l’onglet Taille. Décochez checkbox Taille Fixe et définissez la taille des diagrammes en fonction d’un attribut avec le bouton [trouver la valeur maximale] et le menu Taille. Si les diagrammes apparaissent trop petits à l’écran, vous pouvez cocher la case checkbox Augmenter la taille des petits diagrammes et définir la Taille Minimale des diagrammes.

  9. Changez les couleurs des attributs en double-cliquant sur les rectangles colorées dans le champ Attributs utilisés. Figure_diagrams_2 donne un aperçu.

  10. Et pour finir cliquez sur [OK].

Figure Diagrams 2:

../../../_images/climate_diagram.png

Diagrammes issus de données de températures sur une carte nix

N’oubliez pas que dans l’onglet Position, en cochant la case checkbox Source de définition de la position, vous pouvez utiliser des valeurs d’attributs pour choisir l’emplacement des diagrammes. Par ailleurs, dans l’onglet Apparence, vous pouvez définir la visibilité en fonction de l’échelle.

Onglet Métadonnées

metadata Le menu Métadonnées comprend les sections Description, Attribution, MetadataURL et Propriétés.

Dans la section Propriétés, vous trouverez des informations sur la couche notamment le type de stockage, la source, le nombre d’entités, le type d’entités et les possibilités d’édition. La partie Emprise fournit des informations sur l’emprise de la couche et Système spatial de référence de la couche vous fournit les informations sur le SCR de la couche. Ce menu offre ainsi un moyen rapide pour récupérer des informations globales sur la couche.

En complément, vous pouvez ajouter/éditer un titre pour la couche ainsi que d’autres informations comme un résumé dans Description. Il est aussi possible de définir ici une Liste de mots-clés. Ces listes de mots-clés peuvent être utilisées dans un catalogue de métadonnées. Si vous souhaitez utiliser un titre depuis un fichier XML de métadonnées, vous devez renseigner un lien dans le champ DataUrl. Utilisez Attribution pour récupérer les données d’attributs depuis un catalogue de métadonnées XML. Dans le champ MetadataUrl, vous pouvez définir le chemin général d’accès au catalogue de métadonnées. Ces informations seront stockées dans le fichier de projet QGIS pour les sessions suivantes et seront utilisées par QGIS server.

Figure Metadata 1:

../../../_images/vector_metadata_tab.png

Onglet Métadonnées de la fenêtre de propriétés d’une couche vecteur nix