Le SDK ArcGIS Maps for JavaScript 4.26 est disponible
La version 4.26 de l'ArcGIS Maps SDK for JavaScript (anciennement API JavaScript ArcGIS) vient d'être mise en ligne. Des fonctions d'analyse raster côté client, plus de styles pour étiqueter vos données, l'accrochage pour les mesures 3D, l'interaction avec les couches voxels, l'amélioration des fonctionnalité précédentes... Voyons ensemble ce que nous réserve cette première mise à jour de l'année 2023.
Analyses d'imagerie côté client avec des fonctions raster
Les couches d'imagerie tuilée prennent désormais en charge les fonctions raster côté client (version bêta). Les fonctions raster côté client sont des opérations qui appliquent un traitement directement aux pixels de l'image source. Les calculs ne sont appliqués qu'aux pixels de la source qui sont visibles sur la carte lorsque vous naviguez ou zoomez sur la carte. Esri va continuer à faire évoluer cette nouvelle capacité en ajoutant plus de fonctions raster et en simplifiant leur utilisation dans le code.
L'exemple ci-dessous montre comment utiliser une fonction raster NDVI côté client pour quantifier la verdure de la végétation et utiliser la fonction raster Colormap pour afficher le résultat.
Appliquer un arrière-plan et une bordure aux étiquettes
De nouvelles options sont disponibles pour étiqueter vos données : la classe TextSymbol a été améliorée pour permettre d'ajouter une couleur d'arrière-plan, une couleur de bordure et une épaisseur de bordure.
Définir un symbole de surbrillance unique pour chaque couche
Dans cette nouvelle version, les entités sélectionnées peuvent être mises en surbrillance avec des symboles différents selon la couche 2D, en paramétrant les options de surbrillance dans la couche correspondante. La prise en charge de cette fonctionnalité dans les scènes 3D devrait arriver dans une prochaine version de l'API. Vous pouvez retrouver dans cet extrait de code un exemple de mise en application de cette nouveauté.
Échelle maximale des agrégats et regroupements
Vous pouvez maintenant désactivez les agrégats (clusters) et regroupements (bining) au-delà d'une échelle maximale définie. C'est utile pour les applications dans lesquelles l'utilisateur doit zoomer à une grande échelle où la configuration de regroupement ou d'agrégats n'est plus nécessaire et où les emplacements de points individuels doivent s'afficher. Retrouvez un exemple de cette nouvelle fonctionnalité dans ce code.
Gérer les priorités d'affichage des entités
Le rendu UniqueValueRenderer (rendu par valeurs uniques) est désormais doté d'une propriété orderByClassesEnabled. Depuis la version 4.21, il était déjà possible de contrôler l'ordre d'affichage des entités en se basant sur une valeur numérique ou de date d'un champ, ou en utilisant une expression Arcade. Cette nouvelle mise à jour permet de trier les entités dans le même ordre que celui que vous avez utilisé pour vos UniqueValuesInfos dans la définition de votre rendu. Pour cela, il faut définir la propriété orderByClassesEnabled à true.
Cette nouvelle propriété est intéressante pour permettre d'afficher les entités prioritaires au-dessus des entités moins importantes. Dans l'exemple ci-dessous, l'ordre par défaut (à gauche) fait afficher les accidents les plus graves en-dessous des accidents moins graves (blessures ou sans blessures ni fatalité). L'utilisation d'orderByClassesEnabled (à droite) permet de dessiner les accidents graves au-dessus des autres entités, et ainsi de les faire ressortir.
Capture (snapping) pour les outils de mesure 3D
La version 4.25 de l'API a introduit la capture pour la création des entités 3D. Cette nouvelle version étend cette fonctionnalité aux outils de mesure 3D. Cela vous permettra par exemple de mesurer avec précision les longueurs et les surfaces des toits et des façades de bâtiments. Les mesures directes de lignes et de surfaces s'accrochent désormais aux caractéristiques et aux objets 3D de votre scène. La capture est activée par défaut et peut être activé en maintenant la touche Contrôle enfoncée. Tous les outils qui s'appuient sur l'accrochage dans les scènes 3D bénéficient d'indications améliorées, ce qui facilite l'accrochage aux éléments drapés ou aux données BIM complexes. Vous retrouverez ici un exemple de cette fonctionnalité.
Création de couches multimédias dans Map Viewer
Introduite dans le SDK JavaScript en version 4.24, les couches multimédias (Media Layers) sont également disponibles dans la mise à jour de février d'ArcGIS Online. Elle vous permet de positionner plus facilement des couches multimédias sur des cartes 2D en offrant une expérience interactive et une vue côte à côte pour placer des points d'ancrage. Vous pouvez même appliquer des effets et des mélanges au calque multimédia, comme vous le pouvez avec d'autres types de calques. Une fois que vous êtes satisfait de l'image superposée, vous pouvez enregistrer la carte Web et la charger plus tard dans votre application.
Si vous créez une telle couche via votre code JavaScript, elle sera exploitable dans Map Viewer ou d'autres apps ArcGIS. L'inverse sera également possible.
Si vous créez une telle couche via votre code JavaScript, elle sera exploitable dans Map Viewer ou d'autres apps ArcGIS. L'inverse sera également possible.
Fenêtres contextuelles pour les couches voxels et coupes interactives
Il sera désormais possible d'explorer les propriétés de chaque voxel de votre couche en activant les fenêtres contextuelles sur vos couches de voxels. La fenêtre contextuelle affiche la valeur des attributs, la variable et la position du voxel, et si disponible, la profondeur et le temps. En plus de cela, le support ajouté pour le widget Slice vous permet de regarder interactivement à l'intérieur de votre ensemble de données et de sélectionner n'importe quel voxel.
Vous pouvez essayer ces nouvelles fonctionnalités des couches voxels dans cette série d'exemples.
Amélioration du rendu des reliefs sur les couches altimétriques (MNT) de vos scènes
Cette version propose un rendu du terrain amélioré avec un ombrage renforcé et une résolution accrue pour tous les modes de qualité. En plus du contraste supplémentaire, l'ombrage ajouté dans la version 4.25 a été intensifié en visualisant le terrain avec une géométrie plus détaillée. Cette visualisation améliorée n'a pas d'impact sur les performances grâce à diverses optimisations côté client du rendu du terrain.
Sélection des entités des enregistrements associés dans les fenêtres contextuelles
La possibilité d'afficher les enregistrements associés dans les fenêtres contextuelles, disponible depuis la version 4.25 de l'API et que ma collègue Pauline avait traité dans l'édition 22 de son article "Un mardi, une appli", permet désormais de mettre en surbrillance et de zoomer sur l'enregistrement associé sélectionné tout en ouvrant la table attributaire de l'enregistrement.
Couleurs des graphiques dans les fenêtres contextuelles
Les couleurs des graphiques dans les fenêtres contextuelles correspondent désormais automatiquement aux couleurs utilisées dans les moteurs de rendu d'agrégats et de regroupement. Ceci est pris en charge pour le regroupement avec les rendus par prédominance, par densité de points et par diagramme circulaire, ainsi que pour les agrégats avec le rendu par diagramme circulaire.
Dupliquer les entités lors des opérations de dessin
Le widget Sketch inclut maintenant une méthode duplicate(). Cela permet de dupliquer un ou plusieurs éléments sélectionnés. Les attributs, la géométrie et le symbole du ou des nouveaux graphiques seront copiés à partir du ou des graphiques d'origine.
Exemples de code utilisant l'ESM
Certains des exemples de code incluent désormais le module ES (ESM) pour les développeurs qui préfèrent consommer l'API JavaScript en tant qu'ESM. Les échantillons ESM utilisent @arcgis/core et sont disponibles sous forme d'un projet Vite.js téléchargeable qui peut être installé et construit localement à l'aide de NPM. ESM fonctionne avec la plupart des frameworks JavaScript modernes et des bundlers de modules sans nécessiter de chargeurs supplémentaires ou de configurations spécialisées.
Pour aller plus loin
Pour un aperçu complet des mises à jour de cette version, vous pouvez consulter les notes de version et tester les nouvelles fonctionnalités à l'aide des exemples de code de la version 4.26.
0 comments :
Enregistrer un commentaire