Skip to main content

Un jeu d’Arcade : du contenu à l’infini

Résumé des ressources pour vous aider à maîtriser Arcade.

Le 11 février, Mark Ho et moi-même avons donné le webinaire Un jeu d’Arcade : exploration du langage de script d’Esri pour présenter le langage d’expression léger et portable utilisé dans les systèmes ArcGIS. Nous vous remercions d’y avoir participé; si vous l’avez manqué, vous pouvez en visionner l’enregistrement et en télécharger les diapositives sur demande. Nous avons abordé de nombreux concepts pendant cette heure, et nous espérons que vous êtes repartis suffisamment confiants pour écrire vos premières lignes de code.

Comme le temps que nous avons passé ensemble a été bref, Mark et moi avons rassemblé des ressources supplémentaires et des exemples de scripts Arcade utilisés dans une variété de profils. Avant d’entrer dans le vif du sujet, voici un récapitulatif du comment, du quand et du où d’Arcade ainsi que des raisons qui en font une partie importante du système ArcGIS.

Qu’est-ce qu’Arcade?

Arcade est un langage de script simple et léger qui sert à évaluer les valeurs des champs d’attributs et des géométries dans le contexte d’ArcGIS Pro, d’ArcGIS Runtime, d’ArcGIS Online et d’ArcGIS API for JavaScript. Il a été conçu expressément pour créer des visualisations personnalisées et des étiquettes détaillées, mais il est désormais employé dans un nombre croissant d’environnements. Ses possibilités d’utilisation sont infinies (faire des calculs mathématiques, manipuler du texte et évaluer des énoncés logiques, par exemple).

Maintenant que nous savons ce qu’est Arcade, il est important de noter qu’il ne s’agit pas d’un langage de programmation à part entière. Autrement dit, il n’est pas conçu pour écrire des applications autonomes et il ne remplace pas le géotraitement ou l’automatisation. Ces tâches continueront à être effectuées à l’aide de Python et de JavaScript.

Pourquoi Arcade?

Esri a pris la décision de développer son propre langage de script qui est d’abord géospatial, mais aussi sécurisé, léger et portable. Que faut-il en comprendre? Décortiquons le tout!

Arcade a été conçu et créé selon quatre piliers : léger, portable, sécurisé et géospatial.

  1. Géospatial d’abord – Arcade fait de la fonction et des capacités géospatiales ses principales caractéristiques. Ainsi, les expressions que vous créez sont traitées comme n’importe quel autre attribut, de sorte qu’elles peuvent être utilisées pour symboliser des entités sur une carte ou afficher dynamiquement des informations dans vos fenêtres contextuelles. Un autre élément du caractère géospatial d’Arcade est son inclusion des types de données que sont les entités et les formes géométriques, ce qui permet d’intégrer facilement ce type d’informations dans vos scripts.
  1. Sécurité – Étant donné qu’Arcade est exécuté dans un conteneur sécurisé et ne peut être exécuté en dehors du système ArcGIS, il ne présente pas les failles de sécurité qui ouvrent la porte aux scripts malveillants.
  1. Léger et simple – La syntaxe d’Arcade accorde une bonne marge d’erreur et peut faciliter le travail même du plus novice des programmeurs grâce à sa bibliothèque de fonctions prêtes à l’emploi.
  1. Portable – Les scripts que vous rédigez dans un environnement peuvent être compris par un autre sans avoir à modifier la syntaxe. Par exemple, les étiquettes et les fenêtres contextuelles qui ont été formatées à l’aide d’Arcade dans ArcGIS Online seront rendues de la même manière dans ArcGIS Pro, ArcGIS API for JavaScript et toutes les API ArcGIS Runtime.

Quand utiliser Arcade?

Arcade est idéal pour les tâches simples :

  • combiner des champs entre eux ou calculer de nouveaux champs à la volée;
  • mettre en forme des valeurs existantes dans un champ en effectuant des calculs ou en manipulant du texte;
  • modifier la symbologie (comme la transparence et la rotation);
  • mettre en forme les étiquettes et le contenu des fenêtres contextuelles pour un aspect plus propre.

Arcade est utile pour les tâches complexes aussi :

  • évaluer des énoncés logiques;
  • interroger et manipuler des formes géométriques;
  • établir des règles pour les attributs pendant le processus d’édition;
  • accéder aux données connexes.

Comment utiliser Arcade?

La simplicité était l’un des principaux piliers du développement du langage de script d’Esri. Par conséquent, sa syntaxe est facile à apprendre et accorde une bonne marge d’erreur. Par exemple, le langage est insensible à la casse, prend en charge à la fois les retours implicites et explicites et simplifie les calculs complexes avec sa bibliothèque de fonctions.

Consultez la documentation pour obtenir des informations supplémentaires sur la syntaxe, la structure et la logique d’Arcade.

Où utiliser Arcade?

Arcade est destiné à être utilisé uniquement au sein du système ArcGIS et est exécuté dans le contexte d’un profil désigné. Chaque profil a des intrants attendus qui sont disponibles pour le script comme variables globales et des types d’extrants attendus.

Mark et moi avons examiné attentivement quelques profils. Des tutoriels, des cartes d’exemple et des ressources sont fournis pour les profils Popup (fenêtre contextuelle) Visualization (visualisation), Labeling (étiquettes) et Dashboard (tableau de bord).

Profil Popup

Arcade est utilisé dans le profil Popup pour renvoyer des informations qui peuvent être affichées dans les fenêtres contextuelles de la vue. Les scripts doivent renvoyer du texte, des nombres ou des dates qui peuvent ensuite être utilisés pour alimenter votre fenêtre contextuelle.

Le tutoriel de Mark explique en détail, étape par étape, comment Arcade peut servir à créer des informations contextuelles détaillées. Vous pouvez accéder à sa carte de profil Popup pour suivre le tutoriel.

Dans ce tutoriel, vous découvrirez comment :

  • créer des scripts Arcade de plus en plus complexes en enchaînant les fonctions;
  • utiliser des fonctions géométriques comme les intersections pour afficher des informations sur les points d’intersection et les entités surfaciques;
  • accéder aux informations connexes dans votre carte en utilisant la fonction d’ensembles d’entités;
  • intégrer des expressions Arcade dans le code HTML des fenêtres contextuelles.

Profil Visualization

Arcade est utilisé dans le profil Visualization pour piloter la visualisation des entités ponctuelles, linéaires et surfaciques. L’extrant d’une expression peut servir à afficher la taille du symbole, un nombre peut être utilisé pour afficher les ruptures de classe, ou du texte peut être utilisé pour afficher des valeurs uniques.

Ces cartes utilisent Arcade d’une certaine manière pour personnaliser la symbologie.

Découvrez comment ces cartes ont été créées à l’aide d’Arcade dans cette carte récit! Je présente ici un aperçu détaillé, étape par étape, de la manière dont Arcade est utilisé pour créer une variété de visualisations informatives. Vous pouvez accéder aux cartes du profil Visualization dont il est question dans la carte récit et tester le code vous-même.

Dans ce tutoriel, vous découvrirez comment :

  • symboliser des entités basées sur des pourcentages ou des taux qui sont calculés à la volée;
  • visualiser les changements dans le temps en comparant les variables de votre couche;
  • utiliser les fonctions de date pour visualiser les informations temporelles dans vos données;
  • contrôler la taille des entités ponctuelles et linéaires à des échelles données.

Profil Labeling

Dans le profil Labeling, l’extrant textuel renvoyé par l’expression d’Arcade est utilisé comme étiquette qui s’affiche sur la carte.

Le tutoriel suivant, réalisé par Mark, montre en détail, étape par étape, comment Arcade sert à créer des étiquettes propres et détaillées. Vous pouvez accéder à la carte du profil Labeling pour suivre le tutoriel.

Dans ce tutoriel, vous découvrirez comment :

  • effectuer des calculs mathématiques à la volée;
  • créer et mettre en forme des étiquettes à plusieurs lignes;
  • utiliser la logique pour supprimer le texte invalide ou indésirable.

Profil Dashboard

Le profil Dashboard est utilisé pour les listes et les indicateurs dans ArcGIS Dashboards. Une expression peut être écrite pour personnaliser la façon dont les éléments rendent les points de données. Le script devrait renvoyer un dictionnaire de paires nom-valeur propres à l’élément.

Dans le prochain webinaire sur ArcGIS Dashboards, Mark vous montrera comment personnaliser les fonctionnalités et les affichages à l’aide d’Arcade. Si vous souhaitez prendre de l’avance et commencer à utiliser Arcade dans vos tableaux de bord dès maintenant, consultez les billets de blogue suivants :

Inscrivez-vous au webinaire dès maintenant pour vous familiariser avec le nouvel ArcGIS Dashboards.

N’oubliez pas que nous avons créé un groupe ArcGIS Online en complément au webinaire. Vous pouvez accéder au groupe à l’adresse bit.ly/arcadesfirewebinar (tout en minuscules).

Notre groupe ArcGIS Online propose des ressources supplémentaires tirées de ce webinaire sur Arcade.

De nombreuses questions nous ont été posées pendant le webinaire. Nous avons pris le temps de les parcourir et d’y répondre du mieux que nous pouvions.

Dans la première partie, je réponds à vos questions d’ordre général sur Arcade et je clarifie certains points obscurs concernant les profils Visualization (visualisation) et Attribute Rules (règles d’attributs). Dans la deuxième partie, Mark répond de manière très détaillée à vos questions sur les profils Labelling (étiquettes) et Popup (fenêtre contextuelle).

Merci encore de l’intérêt que vous portez à Arcade. Et surtout, merci à Mark pour sa réserve inépuisable de jeux de mots avec le concept d’arcade!

Bon codage! Nous sommes derrière vous!

Ce billet a été écrit en anglais par Emilie Rabeau et peut être consulté ici.