Rechercher dans le blog

Quelles sont les nouveautés de la version 4.34 du SDK JavaScript d'ArcGIS ?

La version 4.34 de l'ArcGIS Maps SDK for JavaScript vient d'être publiée, et ça sera la dernière version de la génération 4.x ! Cette ultime version propose des nouveautés allant des rendus 3D animés aux workflows d’édition enrichis, en passant par une adoption plus poussée des web components. Voici les points marquants de la version 4.34.

Rendu de flux en 3D 

Il est désormais possible de créer des visualisations animées en 3D à partir de données raster directionnelles (Vector-UV ou Vector-MagDir) grâce au Flow Renderer, applicable aux couches d’imagerie (ImageryTileLayer et ImageryLayer).
 Les lignes de flux peuvent être positionnées par rapport au niveau de la mer ou au relief, permettant par exemple de représenter l’interaction du vent avec la topographie en drapant les lignes sur le terrain avec un léger décalage.

Edition des géométries avec découpe et fusion

Les workflows d’édition Split (découper) et Merge (fusionner) sont désormais intégrés au composant d’édition.
  • Split : permet de diviser des lignes, polygones ou multipoints sélectionnés en plusieurs entités. Après la découpe, l’utilisateur peut prévisualiser les entités résultantes et leurs attributs avant validation.
  • Merge : permet de fusionner plusieurs entités en une seule. Les polygones adjacents seront combinés en un polygone unique, tandis que les non-adjacents formeront un polygone multipart. L’utilisateur choisit quelle entité conservera les attributs.
Ces outils sont particulièrement utiles pour les modifications cadastrales ou de parcelles agricoles ou forestières.

Développer des applications avec des components

Si vous n’avez pas encore migré vers les web components, il est temps d’y penser. Esri recommande d’utiliser les components tels que <arcgis-map> ou <arcgis-scene> à la place des widgets.
Le guide Migrating to components détaille les bonnes pratiques de transition. Nous en reparlerons également dans un article prévu pour la fin de la semaine.
 
Dans la version 4.34, les components continuent d’évoluer : les slots et le Shadow DOM sont désormais implémentés dans les composants Map, renforçant leur encapsulation et flexibilité.

Slots 

Les slots sont un concept central des web components. Ce sont des emplacements prédéfinis dans lesquels vous pouvez intégrer vos propres éléments via leur nom.
Avec cette version, les composants Map et Scene prennent en charge plusieurs slots pour placer des éléments d’interface directement au-dessus de la carte ou de la scène, remplaçant ainsi l’attribut position et le composant placement désormais dépréciés.
Pour un positionnement personnalisé, vous pouvez directement utiliser le CSS, sans slot.
<body class="calcite-mode-dark">
  <arcgis-map item-id="237b9584339446a0b56317b5962a4971">
    <arcgis-zoom slot="top-left"></arcgis-zoom>
    <arcgis-legend slot="bottom-right"></arcgis-legend>
    <calcite-button slot="top-right">Click me!</calcite-button>
  </arcgis-map>
</body>
 

Shadow DOM

Tous les composants Map disposent désormais d’un Shadow DOM. Cet autre concept clé des composants web garantissant une isolation complète du code grâce à une encapsulation qui protège la structure, le style et le comportement internes du composant, en évitant toute interférence avec le reste du code de la page.
Pour personnaliser le style, il faut désormais utiliser les design tokens et les variables CSS documentées.

Modes

Les thèmes clair et sombre sont configurables via les modes de Calcite.
 

Variables CSS de Layout

De nouvelles variables CSS de layout permettent de réserver des marges autour du contenu pour éviter que des éléments d’interface (barres d’outils, légendes, panneaux…) ne masquent les components placés dans les slots.
--arcgis-layout-overlay-space-top
--arcgis-layout-overlay-space-right
--arcgis-layout-overlay-space-bottom
--arcgis-layout-overlay-space-left
 

Chargement des styles du SDK

Cette mise à jour supprime, dans la majorité des cas, la nécessité d’inclure manuellement le lien vers la feuille de style CSS principale du SDK car les styles sont désormais encapsulés directement dans les composants.
Pour plus de détails et quelques cas particuliers, consultez les notes de version, ainsi que le guide de création d'UI de la documentation

Diagrammes : code simplifié et nouveau graphique de type « heat chart »

Les components de diagrammes (Charts) sont désormais sortis de bêta. Ils permettent de visualiser facilement vos données sous forme graphique pour détecter des tendances ou des corrélations. 
 

Chargement déclaratif

Vous pouvez maintenant créer un diagramme pour votre application directement dans votre HTML, en liant le component à un feature layer (avec son attribut layer-item-id) et à au graphique que vous voulez afficher (avec l'attribut chart-index) :
<arcgis-chart 
  layer-item-id="8871626e970a4f3e9d6113ec63a92f2f" 
  chart-index="0">
</arcgis-chart>
 

Heat chart

Le nouveau type de diagramme heat chart permet d’analyser des données sous forme matricielle, en regroupant les valeurs selon deux dimensions (deux champs de date, deux catégories, ou une combinaison des deux). Vous pouvez suivre ce tutoriel pour le prendre en main.

Formatage cohérent des champs au niveau des couches

Vous pouvez désormais configurer le formatage des champs directement dans vos couches (alias, format de date ou de nombre) pour garantir une cohérence d’affichage dans les components (popup, fenêtre contextuelle...)
Cette fonctionnalité s’appuie sur la classe FieldConfiguration, qui remplace progressivement FieldInfo (les applications existantes utilisant toujours FieldInfo continueront cependant à fonctionner).
Elle apporte aussi un meilleur support de l’internationalisation, avec un contrôle précis sur l’affichage selon la langue et le fuseau horaire.

Nouveau composant Popup (bêta)

Le nouveau component <arcgis-popup> disponible en bêta offre une manière déclarative de gérer les fenêtres contextuelles dans les composants Map, Scene et Link Chart.
Il suffit de l’ajouter comme élément enfant dans le slot popup : 
<arcgis-map item-id="237b9584339446a0b56317b5962a4971">
  <arcgis-popup slot="popup"></arcgis-popup>
</arcgis-map>

Nouvelle analyse de mesure de volume (bêta)

L’analyse de volume en 3D permet de mesurer et visualiser les volumes de terrain directement dans une scène. Deux types de mesures sont proposés :
  • cut-fill : calcule les volumes de déblais et de remblais par rapport à une surface plane et horizontale définie par le polygone en entrée. C'est idéal pour estimer la quantité de matériaux à enlever ou à ajouter afin de niveler un terrain lors de travaux de construction.
  • stockpile : calcule les volumes de déblais et de remblais par rapport à une surface approximée à partir des coordonnées du polygone. Cet outil est particulièrement utile pour estimer le volume d’éléments temporaires au sol tels que des tas de matériaux, monticules ou excavations.
L’analyse de volume suit la même logique d’API que les autres outils d’analyse du SDK : elle fournit les résultats de mesure et permet d’ajouter ou de modifier les géométries directement depuis la vue d’analyse. Elle prend actuellement en charge les analyses sur le sol, les couches de maillages intégrés (integrated mesh layers) et les tuiles 3D de maillages intégrés (integrated mesh 3D tiles layers).

Amélioration des couches Parquet (bêta)

Les Parquet Layer permettent de visualiser et analyser des données issues de fichiers Parquet dans des cartes 2D. Cette version ajoute la possibilité de :
  • ajouter des fichiers Parquet non spatiaux, permettant de visualiser des données tabulaires ;
  • afficher les données des couches Parquet dans une Feature Table ou un Popup ;
  • effectuer des requêtes attributaires et spatiales ;
  • calculer des statistiques.

Analyse de profil d’élévation (bêta)

L’analyse de profil d’élévation permet de créer des expériences utilisateur personnalisées pour mesurer et représenter les altitudes le long d’un tracé dans une carte ou une scène.
Les résultats peuvent être affichés dans n’importe quelle bibliothèque de diagramme, ce qui offre une grande flexibilité pour la mise en forme et l’intégration. Vous pouvez explorer cela dans cet exemple de code

Import de modèles 3D géoréférencés

Les modèles 3D peuvent désormais être placés automatiquement dans une scène selon leur géoréférencement, simplifiant leur intégration sans ajustement manuel. Vous pouvez en voir plus dans cet exemple mis à jour et dans le guide des workflows de manipulation des objets 3D de la documentation.

Améliorations en matière d’accessibilité

L’un des axes majeurs du SDK est de permettre aux développeurs de concevoir des applications offrant une expérience positive pour tous les utilisateurs, quelles que soient leurs capacités. Cette version introduit plusieurs nouveautés dans ce domaine.
 

Désactivation des animations dans les cartes 2D

Certaines personnes sont sensibles aux mouvements ou préfèrent des interfaces avec moins d’animations. Offrir la possibilité de les désactiver contribue à rendre les cartes plus confortables et accessibles à tous.
De nouvelles propriétés permettent désormais de contrôler l’ensemble des animations dans les vues cartographiques 2D. Vous pouvez voir cette fonctionnalité en action dans l’exemple mis à jour sur les symboles animés.

Attributs ARIA dans les composants Map et Scene

Les attributs ARIA améliorent la compatibilité avec les lecteurs d’écran et facilitent la création d’applications véritablement inclusives. 
const viewElement = document.querySelector("arcgis-map");
viewElement.aria = {
  label: "New York Transit Map",
  description: "A map showcasing New York City's public transit lines."
};

Optimisation du dernier kilomètre (Last Mile Delivery)

Le Last Mile Delivery correspond à un type d’opération de routage des véhicules (Vehicle Routing Problem) qui vise à calculer les itinéraires les plus optimisés pour une flotte effectuant des livraisons. Elle est spécialement conçue pour répondre aux défis du dernier segment de distribution, en mettant l’accent sur l’efficacité dans les environnements urbains denses.
Cette approche produit des itinéraires géographiquement regroupés, afin que chaque conducteur puisse desservir facilement toutes ses destinations, réduisant ainsi les coûts d’exploitation de la flotte.
Le SDK intègre désormais une classe dédiée permettant d’exploiter facilement cette capacité d’ArcGIS dans vos applications.

Pour aller plus loin

Cet article ne couvre qu’une partie des nouvelles fonctionnalités et améliorations de la version 4.34.
D’autres évolutions sont à découvrir, comme le filtrage des pièces jointes dans les composants features et popup, une stratégie améliorée de gestion des étiquettes, ainsi qu’un meilleur support de l’imagerie orientée.
Consultez les notes de version et explorez les nouveaux exemples pour avoir une vue complète de cette mise à jour !

Aucun commentaire:

Enregistrer un commentaire