Le blog francophone consacré
aux technologies Esri

La version 4.23 de l'API JavaScript ArcGIS est disponible


Depuis quelques jours, la version 4.23 de l'API ArcGIS for JavaScript est disponible. Les évolutions couvrent de nombreux aspects de l'API. Vous pourrez, par exemple, basculer entre des fonds de carte avec ayant des références spatiales différentes, créer des cartes de chaleur en 3D, fournir à vos utilisateurs finaux un environnement de mise à jour des données plus productif, créer des visualisations 2D et 3D toujours plus saisissantes pour présenter vos données d'imagerie à l'aide de flux, ... et bien plus encore. Je vous propose de faire le tour des évolutions les plus marquantes.


Visualiser des flux avec FlowRenderer

En version 4.22, l'API a introduit un nouveau type de rendu par flux animé (en beta) qui vous permet de visualiser les informations de direction et de magnitude du flux pour les données raster de météorologie et d'océanographie avec des lignes de courant animées. Avec cette mise à jour de l'API, ce type de rendu par flux n'est plus en beta et inclut des améliorations importantes. Vous pouvez désormais :
 
  • Piloter la couleur, l'opacité et/ou la taille des lignes de flux en fonction du champ de magnitude de la couche. Vous pouvez même utiliser la cartographie intelligente pour styliser la couche.
  • Changer le sens du flux
  • Si votre couche a une dimension temporelle, vous pouvez l'utiliser avec le curseur temporel qui visualisera le flux pour chaque pas de temps.
  • Enregistrer la couche dans une carte web
  • Imprimer la couche
L'exemple suivant utilise le type de rendu FlowRenderer sur une couche d'imagerie pour visualiser les vitesses du vent pendant l'ouragan Ida. Pour en savoir plus, consultez l'article de blog (en anglais) Créer une visualisation de flux animée avec l'API ArcGIS pour JavaScript.

 
 
Basculer entre des fonds de carte ayant différentes références spatiales (carte 2D)

Vous pouvez maintenant proposer une applicaiton dans laquelle la référence spatiale de votre carte peut être modifiées à la volée en définissant simplement la propriété spatialReference ou en laissant l'utilisateur choisir un autre fond de carte avec une référence spatiale différente via les widgets Basemap Gallery ou Basemap Toggle. Cela signifie que si vous utilisez le widget Basemap Gallery, vous pouvez avoir des fonds de carte avec différentes références spatiales parmi lesquelles vos utilisateurs finaux pouront faire leur choix. De même, le widget Basemap Toggle peut désormais basculer entre deux fonds de carte avec des références spatiales différentes.

Vous pouvez découvrir un exemple de projection côté client et un autre exemple avec des fonds de carte ayant des systèmes de coordonnées différents pour voir cela en action.



Des rendus en "heatmaps" dans des scènes 3D !

Dorénavant, pour vos couches d'entités, vous pourrez mettre l'accent sur des zones de haute densité avec un dégradé de couleurs continu dans votre scène à l'aide des objets HeatmapRenderer. L'intensité de couleur de chaque pixel peut être déterminée uniquement sur la base de sa proximité avec un ou plusieurs points ou pondérée par un attribut de la couche. Le raster résultant peut être drapé sur le sol ou au-dessus de couches de maillage intégrées. Une nouvelle propriété appelée referenceScale vous permet d'ajuster le rayon de flou indépendamment de l'échelle de visualisation actuelle.

L'exemple ci-dessous vous permet d'explorer la densité moyenne de Vélib' disponibles à Paris.



Un nouveau widget pour appliquer une météo dans vos scènes

Passer l'ambiance de votre scène d'une météo ensoleillée à une météo nuageuse, pluvieuse ou brumeuse, c'est ce que vour permettra le nouveau widget Weather. Vous pourrez ajuster de manière interactive la couverture nuageuse ou la densité du brouillard à l'aide du curseur du widget.

Vous pouvez découvrir ce widget dans cet exemple.



Plus de styles de lignes et d'étiquettes dans les scènes 3D

Ajoutez des marqueurs à vos lignes
Vous pouvez désormais ajouter des marqueurs à vos entités linéaires pour souligner leurs points de départ et d'arrivée, ou des flèches pour indiquer une direction. La nouvelle classe LineStyleMarker3D fournit une variété de styles alignés sur les capacités 2D existantes afin que le même calque puisse être affiché de manière cohérente en 2D et en 3D. Les marqueurs peuvent être pilotés par des valeurs d'attribut et pris en charge à l'aide de variables visuelles.
 
Alignement et styles des étiquettes
Vous pourrez également modifier l'apparence des étiquettes et des textes dans vos scènes en utilisant les nouvelles options de style sur TextSymbol3DLayer . Les mises à jour incluent des décorations (telles que des soulignements et des barrés), des paramètres pour une meilleure mise en page du texte (c'est-à-dire l'espacement et l'alignement des lignes), ainsi que le chargement de polices personnalisées. Mettez en valeur des étiquettes spécifiques ou améliorez la lisibilité en ajoutant un arrière-plan au symbole de l'étiquette.

Vous pouvez explorer la première expédition en Antarctique à l'aide de nouveaux marqueurs de ligne et de placement d'étiquettes dans cet exemple.


 
Ajouter une lumière virtuelle

De nouvelles capacités permettent d'améliorer le rendu de visualisations 3D à l'échelle du globe, en particulier au niveau des zones polaires à l'aide de la nouvelle option VirtualLighting. En définissant la propriété d'éclairage de l'objet SceneView, vous pouvez positionner la source de lumière par rapport à la caméra, en minimisant la quantité d'ombres visibles.

Vous découvrirez comment utiliser ce nouvel éclairage virtuel, sur un terrain à l'altimétrie exagérée, autour du globe dans cet exemple .



Introduction des objets d'analyse

L'API JavaScript ArcGIS permet, par programmation, la création d'analyses interactives exécutées côté client comme des mesures, des coupes et des analyses de ligne de visée, puis l'afichage des résultats dans votre scène. Vous pouvez également transmettre un résultat d'analyse au constructeur du widget correspondant pour définir leur état initial et permettre une interaction ultérieure de l'utilisateur.

L'exemple ci-dessous montre comment créer des objets d'analyse par programmation, avec une interaction utilisateur facultative.



Une meilleure expérience pour la mise à jour

Cette version introduit des changements importants dans le widget Editor pour augmenter la productivité de l'utilisateur final lors de la mise à jour des données. L'interface utilisateur de mise à jour rationalise désormais le processus de création et de modification des entités tout en intégrant les contrôles d'accrochage. Le widget Editor inclut également la prise en charge de la création d'entités par lots (batch). Il est maintenant possible de créer plusieurs entités du même type à la fois. Ce faisant, un formulaire s'affiche pour chaque entité nouvellement créée et ses attributs peuvent être modifiés si nécessaire.



Ces mises à jour ne sont que quelques-unes des améliorations apportées à la feuille de route de l'éditeur, et bien d'autres sont prévues pour les prochaines versions.


Formulaire de saisie d'attributs

Prise en charge des valeurs d'attribut contingentes

Le widget FeatureForm prend désormais en charge les valeurs d'attribut contingentes. Les valeurs contingentes sont des options de conception de données (introduite dans ArcGIS Pro 2.4) qui limitent les entrées de champ valides dans un champ en fonction de la valeur choisie dans un autre champ. Cela permet de renforcer l'intégrité des données dans les workflows d'édition.

Calculer la valeur d'un champ avec Arcade

En plus de contrôler la visibilité des champs et si un champ est requis via Arcade, l'API permet désormais le calcul automatique de la valeur de ce champ via l'expression Arcade. Vous pouvez également contrôler si un champ est modifiable via une expression Arcade.


Evolutions du widget "FeatureTable"

Le widget FeatureTable a eu quelques mises à jour importantes dans cette version :

Trier plusieurs champs

Vos utilisateurs peuvent désormais trier la table sur plusieurs champs, en contrôlant quelle colonne est prioritaire par rapport aux autres lors de l'affichage initial de la table. L'image ci-dessous montre la deuxième colonne, "Enrollment", ayant une priorité de tri plus élevée que le "School Name".


Sélectionner et zoomer

Lorsque des enregistrements sont sélectionnés dans la table, deux nouveaux éléments de menu s'affichent : "Afficher les enregistrements sélectionnés" et "Zoom sur la sélection". Ceux-ci peuvent également être appelés par programmation.


Actualisation automatique

La FeatureTable sera automatiquement actualisée lorsque sa couche associée aura été mise à jour (mais cela peut être modifié).

Visibilité des colonnes

Vous pouvez décider de masquer ou d'afficher le menu contextuel des colonnes.


Créer, visualiser et enregistrer des itinéraires

L'objet RouteLayer nouvellement introduit dans l'API, vous permet d'analyser, de visualiser et de partager des itinéraires. Une RouteLayer peut être constituée d'arrêts, de barrières et de directions (si l'itinéraire a été résolu). Les objets RouteLayer peuvent être chargés depuis ArcGIS Online ou Enterprise ou vous pouvez en créer à partir de zéro.

Dans une prochaine version, la classe RouteLayer sera intégré au widget Directions. Cela permettra de créer et d'enregistrer de nouvelles RouteLayers à partir du widget Directions, ainsi que de permettre au widget Directions d'ouvrir et même de mettre à jour les RouteLayers existantes.

Consultez l'exemple d' introduction à RouteLayer pour le voir en action.



Améliorations pratiques de la cartographie

MapView.hitTest renvoie toutes les entités qui se croisent

MapView.hitTest() renvoie désormais toutes les entités qui croisent les coordonnées d'écran spécifiées à partir de couches de type FeatureLayer, CSVLayer, GeoJSONLayer, StreamLayer, GeoRSSLayer et KMLLayer. Auparavant, il renvoyait uniquement l'entité la plus élevée d'une couche.

Statistiques spatiales agrégées

Cette version 4.23 de l'API ajoute la prise en charge des statistiques spatiales agrégées. Une requête de statistiques peut désormais renvoyer une étendue agrégée, des géométries du centre ou l'enveloppe convexe englobant des entités lorsque les statistiques sont regroupées par des champs. Les géométries agrégées seront renvoyées avec les entités de résultat et seront accessibles via la propriété GregGeometries du graphique. Vous pouvez consulter l'exemple de statistiques spatiales agrégées pour le voir en action.



Créez votre propre CIMSymbol en utilisant une meilleure documentation

En plus de la prise en charge améliorée des symboles CIMSymbols, Esri a mis à jour la documentation CIMSymbol afin qu'il soit plus simple pour vous de créer vos propres symboles CIM. Au lieu d'utiliser la spécification CIM sur GitHub, vous pouvez simplement utiliser la référence API. Toutes les propriétés prises en charge à partir de la spécification CIM sont documentées, ainsi que des images et des extraits de code.



Sécurité accrue avec l'authentification OAuth

Avant cette version 4.23, le flux d'authentification OAuth en une étape était utilisé par défaut, ce qui pouvait potentiellement causer des problèmes en cas de fuite ou de vol du jeton. Pour renforcer la sécurité et suivre les recommandations des spécifications des meilleures pratiques actuelles de sécurité OAuth 2.0, l'authentification OAuth utilise désormais par défaut des jetons d'accès de courte durée générés en deux étapes avec le flux PKCE (Proof Key for Code Exchange). Ce sera le comportement par défaut pour les applications utilisant la redirection de page par défaut pour la connexion OAuth.

Cette mise à jour doit être transparente et aucune modification n'est nécessaire pour le développeur si les fenêtres contextuelles ne sont pas utilisées pour la connexion et que l'application accède à ArcGIS Online ou à une version d'ArcGIS Enterprise prenant en charge PKCE. Pour plus d'informations sur cette mise à jour, y compris sur la façon dont vous pouvez utiliser l'authentification en deux étapes avec connexion de l'utilisateur via une fenêtre contextuelle, consultez les notes de version.


Et encore bien plus...

Il y a beaucoup d'autres évolutions à découvrir dans cette version 4.23 de l'API JavaScript ArcGIS. Par exemple, de nouveaux utilitaires pour surveiller les propriétés des accesseurs (reactiveUtils), un meilleur affichage par défaut des images dans les fenêtres contextuelles, des améliorations significatives des performances pour les services d'imagerie volumineux avec plusieurs bandes... et de nombreuses autres améliorations pour aider les développeurs à créer de puissantes applications web catographiques.


Vous saurez tout en visitant les notes de version et encore bien davantage en explorant les nouveaux exemples de codes ajoutés avec cette mise à jour.




Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article: