Le blog francophone consacré
aux technologies Esri

Feature Layers: Gestion des rendus

Un des principaux avantages des Feature Layers est de disposer des entités vectorielles (géométries et attributs) dans l'application clientes. Ceci permet donc de pouvoir modifier, coté client, la symbologie de chaque entités sans avoir à requêter le serveur. Ainsi, vous pouvez envisager des applications dans lesquelles l'utilisateur gère lui-même les rendus de certaines couches de la carte. Dans cet article, je vais exposer rapidement les différents types de rendus disponibles.

Rendu par symbole unique

Toutes les APIs Web ArcGIS (JavaScript, Flex et Silverlight) proposent un mode de représentation basic consistant à affecter à chaque entité d'une même couche un symbole unique. Les APIs permettent de définir les différentes caractéristiques des symboles: la couleur, le type, la largeur, le motif de remplissage ainsi que la couleur, le type et la largeur des contours.


Vous pouvez consulter l'aide en ligne de chaque API pour découvrir les propriétés des symboles ponctuels, linéaires et surfaciques disponibles pour représenter les entités vectorielles.

Pour l'API Flex, vous pouvez consulter les liens suivants pour: les symboles ponctuels, les symboles linéaires et les symboles surfaciques.

Pour l'API Silverlight, vous pouvez également consulter ce lien.


Pour l'API JavaScript, les capacités de création de symboles sont également très évoluées. Les liens évoqués dans la suite de cet article vous permettront de découvrir également cette richesse dans les représentations possibles.


Rendu par valeurs uniques

Toutes les APIs Web proposent une classe UniqueValueRenderer pour affecter un symbole différent pour chaque valeur d'un champ de la Feature Layer. Cette classe permet de préciser le champ de classification, le symbole par défaut ainsi que les différents symboles associés à chaque classe.


Voici par exemple, une illustration avec l'API JavaScript.


Rendu par plages de valeurs

Toutes les APIs Web ArcGIS proposent une classe ClassBreaksRenderer pour affecter des symboles différents à chaque entité de la Feature Layer en fonction de la plage de valeur dans laquelle elle se trouve. Cette classe permet de préciser le champ de classification, le symbole par défaut ainsi que les différents symboles associés à chaque classe.


Voici par exemple une illustration avec l'API Flex ainsi qu'un exemple plus interactif réalisé avec l'API Silverlight.


Rendu par clustering

Les Feature Layers contenant des entités ponctuelles peuvent être représentées à l'aide de rendus par Clustering. Ce type de représentation consiste à regrouper à la volée plusieurs points géographiquement proches pour leur associer un seul et unique symbole ponctuel traduisant le nombre de points regroupés. Les points les plus isolés géographiquement sont représentés à leur véritable localisation avec un symbole ponctuel généralement différent. A chaque changement de cadrage ou changement d'échelle, le regroupement des points est recalculé.


J'avais déjà évoqué ce type de représentation en l'illustrant mes propos avec des exemples d'application JavaScript, Silverlight et Flex. Cet article se trouve ici.


Rendu temporel

Les Feature Layers peuvent disposer d'une composante temporelle. Ce sera le cas si, lors de la conception du service de carte dans ArcGIS for Desktop, des propriétés de temps ont été définies sur certaines couches. Toutes les APIs Web ArcGIS proposent une classe TemporalRenderer pour représenter vos entités en fonction de leur valeur et d'une date. Ceci permet donc d'animer facilement vos cartes dès lors qu'elles contiennent au moins une Time-aware Layer. Pour accompagner cette représentation, toutes les APIs Web proposent un contrôle TimeSlider pour déplacer la carte au cours du temps.


Vous pouvez consulter cet exemple réalisé avec l'API Flex, cet exemple réalisé avec l'API JavaScript, cet exemple simple réalisé avec l'API Silverlight ou celui-ci un peu plus évolué.


Grâce à la richesse des symboles ponctuels, linéaires et surfaciques disponibles dans les APIs Web (et Mobile) d'ArcGIS et grâce au différents types de rendus proposés, les Feature Layers peuvent être représentées de manière très dynamique. Elles permettent également de réaliser des applications dans lesquelles l'utilisateur est libre d'adapter la représentation des données à ses besoins.


Dans un dernier article, je reviendrai sur les aspects de performance ou comment estimer le nombre limite d'entités vectorielles à afficher dans une application Web ArcGIS. Je reprendrai également les bonnes pratiques pour maintenir les performances sur des Feature Layers contenant des larges volumes de données.

Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article: