<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-3781853964762057615</atom:id><lastBuildDate>Wed, 06 May 2026 09:03:21 +0000</lastBuildDate><category>JavaScript</category><category>Featured</category><category>tutoriel</category><category>Mise à jour</category><category>Général</category><category>Python</category><category>Runtime</category><category>3D</category><category>Calcite</category><category>Native Apps</category><category>Game Engines</category><category>Location services</category><category>Platform</category><category>Unity</category><category>Unreal Engine</category><category>ArcGIS Developer</category><category>Design System</category><category>Moteurs de jeu</category><category>événement</category><category>Basemap</category><category>Flutter</category><category>Open Source</category><category>analyse spatiale</category><category>iOS</category><category>30DayMapChallenge</category><category>Composants</category><category>REST</category><category>administration</category><category>contenu</category><category>API key</category><category>POI</category><category>3DTiles</category><category>Agents</category><category>ArcGIS Developer Bundle</category><category>ArcGIS Notebooks</category><category>Arcade</category><category>CesiumJS</category><category>Experience builder</category><category>GeoJSON</category><category>IA</category><category>Map Libre</category><category>Popups</category><category>deep learning</category><category>labels</category><category>low-code</category><category>renderer</category><category>widgets</category><title>CodeTheMap</title><description>Intégrer facilement la Géo à votre application !</description><link>https://www.codethemap.fr/</link><managingEditor>noreply@blogger.com (Raynald GARNIER)</managingEditor><generator>Blogger</generator><openSearch:totalResults>204</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-2412657043023324586</guid><pubDate>Mon, 04 May 2026 07:34:00 +0000</pubDate><atom:updated>2026-05-04T09:34:00.121+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">3D</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Mesurer des volumes dans une scène 3D avec le SDK JavaScript d&#39;ArcGIS</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img
    src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5kiNn7S0TRdm3-B00we9nOByyEqWKyoSxxP2d87Y_a8VSKzYpMjYtwrW4u95PWZfPqMl671xCiOG-wwFW0Gb-ICjC-1DQXb3bMPmv992cQsY6qddTRM39ZBzX8-i83nFktSbMw__Uk1C9K5fUM-u6Q5hvyTtt_R3Y4UAyXj7UC-e5_0UrV7wzfVpZcGyC/s1500/minia-vol-min.jpg&quot;
    style=&quot;display: none;&quot;
  /&gt;
&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  En version 4.34, le SDK JavaScript d&#39;ArcGIS a introduit des capacités de
  mesure de volumes dans les scènes 3D via la classe
  &lt;a
    href=&quot;https://developers.arcgis.com/javascript/latest/references/core/analysis/VolumeMeasurementAnalysis/&quot;
    target=&quot;_blank&quot;
    &gt;VolumeMeasurementAnalysis&lt;/a
  &gt;
  (encore en beta).&amp;nbsp; Deux types de mesures sont disponibles : les mesures
  de déblais-remblais (par exemple pour des problématiques d&#39;aplanissement dans
  les travaux de construction); et les volumes de dépôt (par exemple dans des
  contextes de mines et carrières pour l&#39;estimation du volume de stockpiles, ou
  pour des volumes de dragage).
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;display:none&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5kiNn7S0TRdm3-B00we9nOByyEqWKyoSxxP2d87Y_a8VSKzYpMjYtwrW4u95PWZfPqMl671xCiOG-wwFW0Gb-ICjC-1DQXb3bMPmv992cQsY6qddTRM39ZBzX8-i83nFktSbMw__Uk1C9K5fUM-u6Q5hvyTtt_R3Y4UAyXj7UC-e5_0UrV7wzfVpZcGyC/s1500/minia-vol-min.jpg&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;854&quot;
        data-original-width=&quot;1500&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5kiNn7S0TRdm3-B00we9nOByyEqWKyoSxxP2d87Y_a8VSKzYpMjYtwrW4u95PWZfPqMl671xCiOG-wwFW0Gb-ICjC-1DQXb3bMPmv992cQsY6qddTRM39ZBzX8-i83nFktSbMw__Uk1C9K5fUM-u6Q5hvyTtt_R3Y4UAyXj7UC-e5_0UrV7wzfVpZcGyC/s16000/minia-vol-min.jpg&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  J&#39;ai développé rapidement une petite application, qui vous permet de tester en
  action ces deux types de mesures dans différents contextes :
&lt;/div&gt;
&lt;a href=&quot;https://japalenos.github.io/JS-API/Mesure-de-volumes/&quot; target=&quot;blank&quot;
  &gt;&lt;iframe
    height=&quot;700&quot;
    id=&quot;inlineFrameExample&quot;
    src=&quot;https://japalenos.github.io/JS-API/Mesure-de-volumes/&quot;
    title=&quot;Hexagons&quot;
    width=&quot;100%&quot;
  &gt;&lt;/iframe
&gt;&lt;/a&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Les dessous de l&#39;app&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez retrouvez le code complet de cette application
  &lt;a
    href=&quot;https://github.com/JapaLenos/JS-API/tree/main/Mesure-de-volumes&quot;
    target=&quot;_blank&quot;
    &gt;sur mon Github&lt;/a
  &gt;, ou en mode bac à sable sur
  &lt;a
    href=&quot;https://codepen.io/japalenos/pen/bNwrwXL?editors=1011&quot;
    target=&quot;_blank&quot;
    &gt;ce CodePen&lt;/a
  &gt;.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;
    &gt;Composant &amp;lt;arcgis-volume-measurement&amp;gt;&amp;nbsp;&lt;/span
  &gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Très simplement, j&#39;ai ajouté le composant
  &lt;a
    href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-volume-measurement/&quot;
    target=&quot;_blank&quot;
    &gt;&amp;lt;arcgis-volume-measurement&amp;gt;&lt;/a
  &gt;
  à ma scène, qui permet d&#39;y inclure les capacités de mesure de volumes via une
  interface utilisateur préconfigurée. L&#39;utilisateur peut choisir le mode de
  mesure, puis faire une analyse interactive en dessinant sur la scène.
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;arcgis-volume-measurement id=&quot;volumeMeasurement&quot; slot=&quot;bottom-left&quot;&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8g9zKO16hP7U1hAorltggnRCUERDZGCmCjahuveW5Kx4sIrhrHKSargpU4PUHBae30CO5_voP_tntJmgO6ON9k5Ig3RNfQY9YtK7NTIqBNpyAn_3e8Zdm7FsT83n7A98LR2_K5xqh2rmRpIPUJGY2QikNI20hDjRPK1MvJZ9a_WDgd-uoICOWZyxflVPN/s1920/1ter.gif&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1080&quot;
        data-original-width=&quot;1920&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8g9zKO16hP7U1hAorltggnRCUERDZGCmCjahuveW5Kx4sIrhrHKSargpU4PUHBae30CO5_voP_tntJmgO6ON9k5Ig3RNfQY9YtK7NTIqBNpyAn_3e8Zdm7FsT83n7A98LR2_K5xqh2rmRpIPUJGY2QikNI20hDjRPK1MvJZ9a_WDgd-uoICOWZyxflVPN/s16000/1ter.gif&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;
    &gt;Initialisation de l&#39;analyse en cliquant sur une entité&lt;/span
  &gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour certains endroits, je possède également des couches d&#39;entités, qui
  délimitent l&#39;emprise des stockpiles ou des travaux de construction. J&#39;aimerais
  que l&#39;analyse se lance automatiquement quand l&#39;utilisateur clique
  dessus.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Avec un hitTest dans la vue, je récupère la géométrie de l&#39;entité sur laquelle
  l&#39;utilisateur a cliqué.&amp;nbsp;
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;  view.on(&quot;click&quot;, async (event) =&amp;gt; {
    const hit = await view.hitTest(event);
    const feature = hit.results
      .map((r) =&amp;gt; r.graphic)
      .filter(
        (g) =&amp;gt; g.layer === layerStockpiles || g.layer === layerChantier
      )[0];
    if (!feature) return;

    const polygon = new Polygon({
      rings: feature.geometry.rings,
      spatialReference: feature.geometry.spatialReference
    });&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le code évalue également la couche à laquelle l&#39;entité appartient, afin de
  lancer le bon type d&#39;analyse en fonction du contexte.
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;    const measureType =
      feature.layer === layerStockpiles ? &quot;stockpile&quot; : &quot;cut-fill&quot;;&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Je peux ensuite passer la géométrie et le type de mesure en paramètres du
  composant d&#39;analyse de volume, ce qui lancera une nouvelle analyse.
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;    volumeMeasurement.analysis.geometry = polygon;
    volumeMeasurement.analysis.measureType = measureType;&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2mSIWA1s9ijLiSr1OZdcOlTjQnitUs2-i7eaR1u2e1wqENse5nEA5Rn7mCUWeH6ZSU09IHDPO4R2SYBBvZvUgdi7Ot7y6VPCQEgXIfp_oxkE46Nb5k8KRkv5puvs4O3E-lhpV4qA1mCVc8PvGJDkQxlER4yTXctbNqjvsyT9m9QmI2uRie_XH1QuYbAYw/s1920/2.gif&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1080&quot;
        data-original-width=&quot;1920&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2mSIWA1s9ijLiSr1OZdcOlTjQnitUs2-i7eaR1u2e1wqENse5nEA5Rn7mCUWeH6ZSU09IHDPO4R2SYBBvZvUgdi7Ot7y6VPCQEgXIfp_oxkE46Nb5k8KRkv5puvs4O3E-lhpV4qA1mCVc8PvGJDkQxlER4yTXctbNqjvsyT9m9QmI2uRie_XH1QuYbAYw/s16000/2.gif&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Enfin, j&#39;ai rajouté un test sur l&#39;objectid, qui fait que si l&#39;utilisateur
  re-clique sur l&#39;entité qu&#39;il vient de sélectionner, celle-ci se désélectionne,
  pour un comportement plus ergonomique.
  &lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;  const clickedId = feature.attributes.OBJECTID;
    if (currentFeatureId !== null &amp;amp;&amp;amp; currentFeatureId === clickedId) {
      volumeMeasurement.analysis.geometry = null;
      volumeMeasurement.analysis.measureType = &quot;cut-fill&quot;;
      currentFeatureId = null;
      return;
    }
    currentFeatureId = clickedId;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;
    &gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a
        href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqAntA8DfdmwHIqkDnGv-wpoXCKxzGz5Qg1nNoKPYnQ7JJz31gHyPvFuSdPhUywS2fC5_HTO-wEPnPBHa-ehxIaW84Xgzksj1MUbHcc8ZOOMes2kbCHBM1_yxKHy78vN_k3rGmLFXM8Doe8-0ANPJYy59MoLky0ZLoyaUZ_XYwP8zpPA4cRo0B8lbJeZCX/s1920/3.gif&quot;
        style=&quot;margin-left: 1em; margin-right: 1em;&quot;
        &gt;&lt;img
          border=&quot;0&quot;
          data-original-height=&quot;1080&quot;
          data-original-width=&quot;1920&quot;
          src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqAntA8DfdmwHIqkDnGv-wpoXCKxzGz5Qg1nNoKPYnQ7JJz31gHyPvFuSdPhUywS2fC5_HTO-wEPnPBHa-ehxIaW84Xgzksj1MUbHcc8ZOOMes2kbCHBM1_yxKHy78vN_k3rGmLFXM8Doe8-0ANPJYy59MoLky0ZLoyaUZ_XYwP8zpPA4cRo0B8lbJeZCX/s16000/3.gif&quot;
      /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Le reste du code&lt;/span
  &gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le reste du code est très simple : j&#39;ai préconfiguré la scène via le Scene
  Viewer, permettant une intégration&amp;nbsp; rapide via le composant
  &lt;a
    href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/&quot;
    target=&quot;_blank&quot;
    &gt;&amp;lt;arcgis-scene&amp;gt;&lt;/a
  &gt;
  (au global, passer par le Scene Viewer ou le Map Viewer pour construire sa
  carte plutôt que tout faire programmatiquement est une pratique fortement
  recommandée, je vous explique pourquoi dans
  &lt;a
    href=&quot;https://www.codethemap.fr/2025/03/carto-web-no-code-low-code-arcgis.html&quot;
    target=&quot;_blank&quot;
    &gt;cet article&lt;/a
  &gt;).&amp;nbsp;
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-scene item-id=&quot;e64cfad70d6c4b7cb8432a5d211577ab&quot;&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Je récupère ensuite les slides crées dans Scene Viewer et les ajoute à mon
  application, pour que l&#39;utilisateur puisse rapidement passer d&#39;un exemple à
  l&#39;autre. Je rajoute une liste côté html :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;calcite-list id=&quot;slidesList&quot;&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;Que j&#39;alimente avec les slides préconfigurées côté JS :&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt; const slides = view.map.presentation?.slides;
  const list = document.getElementById(&quot;slidesList&quot;);

  if (slides) {
    slides.forEach((slide) =&amp;gt; {
      const item = document.createElement(&quot;calcite-list-item&quot;);
      item.label = slide.title.text;
      if (slide.description.text) {
        item.description = slide.description.text;
      }
      if (slide.thumbnail?.url) {
        const img = document.createElement(&quot;img&quot;);
        img.src = slide.thumbnail.url;
        img.slot = &quot;content-start&quot;;
        img.style.cssText = &quot;width: 64px; height: 40px; object-fit: cover;&quot;;
        item.appendChild(img);
      }
      item.addEventListener(&quot;click&quot;, () =&amp;gt; {
        slide.applyTo(view, { animate: true, duration: 1500 });
      });
      list.appendChild(item);
    });
  }
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtoc61KQZRSMx9XXqiWUaANiuf4V1e2aa8dpnQ-gw_z1mz65ZsoZdGlN_CZMcAZk5cYb0d4x1AimyIKrAZnL1IjQok-92BrVXrbmjV8xskTHEQ7tGHJNirSwhmkUap9VdHYDIQTRelVcWE2grKSob2284qRcR0GOr6mV-T9jPpb2XZQr-5YkvXvI_8-hvF/s1920/4.gif&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1080&quot;
        data-original-width=&quot;1920&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtoc61KQZRSMx9XXqiWUaANiuf4V1e2aa8dpnQ-gw_z1mz65ZsoZdGlN_CZMcAZk5cYb0d4x1AimyIKrAZnL1IjQok-92BrVXrbmjV8xskTHEQ7tGHJNirSwhmkUap9VdHYDIQTRelVcWE2grKSob2284qRcR0GOr6mV-T9jPpb2XZQr-5YkvXvI_8-hvF/s16000/4.gif&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  C&#39;est tout pour aujourd&#39;hui ! N&#39;hésitez pas à
  &lt;a href=&quot;https://www.codethemap.fr/search/label/tutoriel&quot; target=&quot;_blank&quot;
    &gt;consulter les autres tutoriels du blog&lt;/a
  &gt;, ou à
  &lt;a href=&quot;https://www.codethemap.fr/search/label/JavaScript&quot; target=&quot;_blank&quot;
    &gt;en apprendre plus sur l&#39;API JavaScript d&#39;ArcGIS&lt;/a
  &gt;
  !&amp;nbsp;
&lt;/div&gt;

</description><link>https://www.codethemap.fr/2026/05/mesurer-des-volumes-dans-une-scene-3d.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5kiNn7S0TRdm3-B00we9nOByyEqWKyoSxxP2d87Y_a8VSKzYpMjYtwrW4u95PWZfPqMl671xCiOG-wwFW0Gb-ICjC-1DQXb3bMPmv992cQsY6qddTRM39ZBzX8-i83nFktSbMw__Uk1C9K5fUM-u6Q5hvyTtt_R3Y4UAyXj7UC-e5_0UrV7wzfVpZcGyC/s72-c/minia-vol-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-2545487854544132447</guid><pubDate>Thu, 30 Apr 2026 08:24:00 +0000</pubDate><atom:updated>2026-04-30T10:26:08.332+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Python</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Utiliser le module d&#39;IA de l&#39;API Python d&#39;ArcGIS pour analyser des photos</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://esrifrance.maps.arcgis.com/sharing/rest/content/items/686a52cbc93e432daf1f4b55e88130a4/data&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comme vous vous en doutez, j&#39;ai eu quelques contretemps dans la publication
  &lt;a href=&quot;https://www.codethemap.fr/2025/12/tutoriels-api-python-arcgis.html&quot; target=&quot;_blank&quot;&gt;des tutoriels sur l&#39;API Python&lt;/a&gt;... La bonne nouvelle, c&#39;est qu&#39;entre temps la
  &lt;a href=&quot;https://www.codethemap.fr/2026/04/les-nouveautes-de-la-version-243-de.html&quot; target=&quot;_blank&quot;&gt;version 2.4.3&lt;/a&gt;
  est sortie, et avec elle les capacités très cools du module
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.ai.html&quot; target=&quot;_blank&quot;&gt;arcgis.ai&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans ce tutoriel, nous allons voir comment utiliser la
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.ai.html#analyze-image&quot; target=&quot;_blank&quot;&gt;classe d&#39;analyse d&#39;image&lt;/a&gt;
  pour analyser les pièces jointes d&#39;une couche d&#39;entités. Ce workflow peut par
  exemple vous être utile dans le cas d&#39;une couche d&#39;entité issue d&#39;une enquête
  de terrain Survey123, où l&#39;opérateur de terrain peut prendre des photos, puis
  votre script se déclencherait tous les soirs pour remplir un champ de
  description de l&#39;image, qui accélèrerait le travail de terrain.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJE9NB8NXG1h1bQJnXpK5Aq1SVE9IiFYn2Mn9FiyPXWRjMqbsvSWNBNAb3kZCpIH6qoDBuwyu9HifPRl4QvKXiRxsyRgubiZj2SGKIhwPhxePgUhzK1RaPPeNaIDZU5H44HhjgvZy7VdXZovY5IVEDO_jyW6YBF4UWJZ8pGBq6F7ivLdJW-1B5cSUekm9W/s2833/tuto-py-26-2-texte-min.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1592&quot; data-original-width=&quot;2833&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJE9NB8NXG1h1bQJnXpK5Aq1SVE9IiFYn2Mn9FiyPXWRjMqbsvSWNBNAb3kZCpIH6qoDBuwyu9HifPRl4QvKXiRxsyRgubiZj2SGKIhwPhxePgUhzK1RaPPeNaIDZU5H44HhjgvZy7VdXZovY5IVEDO_jyW6YBF4UWJZ8pGBq6F7ivLdJW-1B5cSUekm9W/s16000/tuto-py-26-2-texte-min.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Pour utiliser cette capacité, vous devez utiliser la version 2.4.3 de l&#39;API.
  Si vous utilisez ArcGIS Notebooks, elle est incluse à partir de la v3.7
  d&#39;ArcGIS Pro, et dans la mise à jour de juin 2026 dans ArcGIS Online. Si vos
  versions des logiciels ne sont pas à jour (ou pas encore disponible), vous
  pouvez suivre le premier tutoriel de cette série pour
  &lt;a href=&quot;https://www.codethemap.fr/2026/01/tutoriel-api-python-arcgis-1.html&quot; target=&quot;_blank&quot;&gt;installer un environnement Python avec l&#39;API&lt;/a&gt;, ce qui vous permettra d&#39;installer celle-ci (ou de la mettre à jour) dans la
  dernière version. Notez que vous devez également posséder une organisation où
  les assistants IA sont activés.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cet article vous présente les étapes pas à pas avec les captures d&#39;écran, et
  vous pouvez également récupérer
  &lt;a href=&quot;https://github.com/JapaLenos/Python-in-ArcGIS/blob/main/Analysis/arcgis-ai/arcgis-ai-analyse_image.ipynb&quot; target=&quot;_blank&quot;&gt;le Notebook complet sur mon Github&lt;/a&gt;.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Imports et connexion au portail&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Je commence comme d&#39;habitude par importer les différents modules qui me seront
  utiles. Vous pouvez également vérifier que votre version de l&#39;API est correcte
  (si ça n&#39;est pas le cas, l&#39;import d&#39;arcgis.ai échouera de toute façon).&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_8P_esLX4NxZwkWOGJCBPH_2S3mJ6J2kluQIClWGDVUCLirtaV1Qa9BiFT2D-gCdTj4SCA_eIo59aomck3Pk6COtF8vcPPY1DgkBHkpgMlq417BUqf5JL6HeSPUG5JjLKpaCSqsiwmq10w8fo0HF0_9Q78k2G5t1MtLBB-uwyAWo1qGht-sKDSH9FIrwi/s1387/1.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;258&quot; data-original-width=&quot;1387&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_8P_esLX4NxZwkWOGJCBPH_2S3mJ6J2kluQIClWGDVUCLirtaV1Qa9BiFT2D-gCdTj4SCA_eIo59aomck3Pk6COtF8vcPPY1DgkBHkpgMlq417BUqf5JL6HeSPUG5JjLKpaCSqsiwmq10w8fo0HF0_9Q78k2G5t1MtLBB-uwyAWo1qGht-sKDSH9FIrwi/s16000/1.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Vous pouvez ensuite vous connecter au portail. Ici, vu que je ne travaille pas
  dans ArcGIS Notebooks, je passe mes identifiants de la manière suivante
  :&amp;nbsp;&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5Iczzei527mLnJEkeZLJOAhWYVjYnda7ifsM1I_nouhH5xLzasvBZrVJh-_a1WyCuKliGAB1DEIpIY7V8wrRSKyK9-OGomNqYD9_Jpylen-lzXIevjQKtUKD5jeYqDey5hi1eqE4LtyeeVoB0BmOmLvKmBlSgtAjaqTu2MvJIqQMHvHN0mBmlwOQSPS7o/s1383/2.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;117&quot; data-original-width=&quot;1383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5Iczzei527mLnJEkeZLJOAhWYVjYnda7ifsM1I_nouhH5xLzasvBZrVJh-_a1WyCuKliGAB1DEIpIY7V8wrRSKyK9-OGomNqYD9_Jpylen-lzXIevjQKtUKD5jeYqDey5hi1eqE4LtyeeVoB0BmOmLvKmBlSgtAjaqTu2MvJIqQMHvHN0mBmlwOQSPS7o/s16000/2.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Appel et préparation de la couche d&#39;entités&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  J&#39;ai repéré dans mon org une couche d&#39;entités parfaite pour les besoins de ma
  démonstration : elle comporte des pièces jointes&amp;nbsp; hébergées sur un
  domaine arcgis.com (obligatoire pour que l&#39;analyse fonctionne) ; c&#39;est le cas
  par défaut pour les couches d&#39;entités issues d&#39;enquêtes Survey123. Mon but va
  être de rajouter un champ de description de la photo, et d&#39;utiliser l&#39;IA pour
  le compléter.
  &lt;i&gt;Dans votre script, remplacez l&#39;id de la couche par celui d&#39;une couche
    hébergée sur votre portail.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcWYYv67P-WPteBvmwfg5JRyuFP0hD-lV_Mc8Hnzrjq3n4k1lQJVZwyVfJWB_0NT8NQTCH9fLZiQwNNTRo5YKgju9IcWaBjIVydxlVgcFeRofdHUOi4wBQmWfFlFsMx3jz_S4V88EQZncjiVm-w81uutaj8CD0FnDhiwpLoOLLHuDsBp7dCn7j0fQKs8bH/s1384/3.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;42&quot; data-original-width=&quot;1384&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcWYYv67P-WPteBvmwfg5JRyuFP0hD-lV_Mc8Hnzrjq3n4k1lQJVZwyVfJWB_0NT8NQTCH9fLZiQwNNTRo5YKgju9IcWaBjIVydxlVgcFeRofdHUOi4wBQmWfFlFsMx3jz_S4V88EQZncjiVm-w81uutaj8CD0FnDhiwpLoOLLHuDsBp7dCn7j0fQKs8bH/s16000/3.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/i&gt;Vous pouvez travailler directement sur la couche d&#39;entités d&#39;origine, mais vu
  qu&#39;elle appartient à l&#39;un de mes collègues et que je n&#39;ai pas envie de
  bousiller son travail, je l&#39;ai d&#39;abord clonée, puis j&#39;accède au layer que je
  veux cibler (ici il n&#39;y en a qu&#39;un seul, il est donc à l&#39;index 0) :
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIZFTxSMtlZhTbO6-i9dRQ4UdNVVTjLo_uN5ZoSCG7lvoz-yXecTY5sUugWWVwXDCW5a5CR9QUkY9DHJcrkKdhaAAGlmLPKgG-LWBp3VMh__HKhSf4tiNYNEHsCnMKbZMTH1TR7im-de8nGomvo9i357oYXdoGp9kk1UdPfz8Jp1KYWs4xPLlPGBzMhCWd/s1381/4.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;341&quot; data-original-width=&quot;1381&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIZFTxSMtlZhTbO6-i9dRQ4UdNVVTjLo_uN5ZoSCG7lvoz-yXecTY5sUugWWVwXDCW5a5CR9QUkY9DHJcrkKdhaAAGlmLPKgG-LWBp3VMh__HKhSf4tiNYNEHsCnMKbZMTH1TR7im-de8nGomvo9i357oYXdoGp9kk1UdPfz8Jp1KYWs4xPLlPGBzMhCWd/s16000/4.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Je viens maintenant ajouter un champ description_photo dans ma couche clonée
  :&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGqpZ0AfiBdr8nROUCeeFH-eTgt_5x-9xpYa9sovKuhOAbnML59tvOTqyyMESgcQACYLh6CHRk-Lqwdk7RGZd00YEeVVbohA4bh3EB1NHoPdbG7OgAL7FpOvYPrdhn1Sh2DN1Gl0rWyypGBDJD6T3Mygt6-1naJht-88X5w06pg84XVG4u1D3ND4z2UG95/s1392/5.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;291&quot; data-original-width=&quot;1392&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGqpZ0AfiBdr8nROUCeeFH-eTgt_5x-9xpYa9sovKuhOAbnML59tvOTqyyMESgcQACYLh6CHRk-Lqwdk7RGZd00YEeVVbohA4bh3EB1NHoPdbG7OgAL7FpOvYPrdhn1Sh2DN1Gl0rWyypGBDJD6T3Mygt6-1naJht-88X5w06pg84XVG4u1D3ND4z2UG95/s16000/5.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Enfin, je requête toutes les entités de la couche :
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg38C3hD8ls3lDWjHobK585Q01YGB38xx1AN27FvlhcZcZCVtftxAimfJpTDd0e1TBS95vsX8ynAe52U32z1-meuXa3IW_jbhD8qUfS44LA4rd-0DyeQlFQ37BM7-AKu18SVXGo0tPBVAZXkQKyK_mEH1cGVOtUaCw0vBe6-01OQsD8mLKGH-KCUGDthDDd/s1382/6.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;42&quot; data-original-width=&quot;1382&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg38C3hD8ls3lDWjHobK585Q01YGB38xx1AN27FvlhcZcZCVtftxAimfJpTDd0e1TBS95vsX8ynAe52U32z1-meuXa3IW_jbhD8qUfS44LA4rd-0DyeQlFQ37BM7-AKu18SVXGo0tPBVAZXkQKyK_mEH1cGVOtUaCw0vBe6-01OQsD8mLKGH-KCUGDthDDd/s16000/6.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Analyse de la photo par l&#39;IA&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Voici à quoi ressemblent les données de ma couche à l&#39;heure actuelle si je
  vais l&#39;observer sur mon portail :
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgg0rJmX0WyiE_XwjHYetmaHG40OPHHd3MsTuRAqj15Csj3qlukpsNP6o_SiTa85WdGgMxWHtzygvv1PoNKCEHXy29zSg8K4-aRtVua5kCDbV-S6T8DiAWrb8OgRCGlT5tnDuQTAbnaeaTILHTl8WnqPi06N4NIxJVLcaQFnKmuddYnDjqr-zA_aAKPhSJl/s1011/7.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;519&quot; data-original-width=&quot;1011&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgg0rJmX0WyiE_XwjHYetmaHG40OPHHd3MsTuRAqj15Csj3qlukpsNP6o_SiTa85WdGgMxWHtzygvv1PoNKCEHXy29zSg8K4-aRtVua5kCDbV-S6T8DiAWrb8OgRCGlT5tnDuQTAbnaeaTILHTl8WnqPi06N4NIxJVLcaQFnKmuddYnDjqr-zA_aAKPhSJl/s16000/7.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Le champ de description est vide, et je vais demander au service d&#39;IA
  d&#39;analyser la photo et de la décrire. Ici, nous nous contenterons d&#39;une
  description globale, mais vous pouvez vous servir de la même classe pour faire
  de la détection d&#39;objets, de l&#39;extraction de texte ou de la segmentation, en
  fonction de ce que vous indiquez dans votre prompt.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Je vais parcourir chacune des entités, et accéder à leur pièce jointe (le
  script ignore les entités ne possédant pas de pj). J&#39;appelle ensuite la
  fonction d&#39;analyse d&#39;image, et lui passe en argument la pièce jointe de
  l&#39;entité. J&#39;indique dans le prompt ce que j&#39;attends pour l&#39;analyse de cette
  image, ici une simple description. Notez que vous pouvez passer plusieurs
  prompts dans la même fonction via une liste, ce qui vous permet de demander
  plusieurs choses différentes.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwrRCS3VDO6iA7CgDFoIE-XCuhMNJ3hFSjjMfsn7OyX_WunT6t0MiW4pec0mNx7sh0qRQiGlJCzUpPTqss9evpUnwvgdUBfOiRBm08-WDnba9tSfYsvpyedq8_sAZIvdfhMPd96zLAWik_gIzMQJEGT9eQqroBNjzs59_NLlY4sbLfvbueUfkfJrqasZxQ/s1208/8.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;706&quot; data-original-width=&quot;1208&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwrRCS3VDO6iA7CgDFoIE-XCuhMNJ3hFSjjMfsn7OyX_WunT6t0MiW4pec0mNx7sh0qRQiGlJCzUpPTqss9evpUnwvgdUBfOiRBm08-WDnba9tSfYsvpyedq8_sAZIvdfhMPd96zLAWik_gIzMQJEGT9eQqroBNjzs59_NLlY4sbLfvbueUfkfJrqasZxQ/s16000/8.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Il ne me reste plus qu&#39;à appliquer les mises à jour à la couche.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi87iu1guv05cWk0EeLtzdGYtLFq37MnTVIK7ZY4bXoTgf_iAUeaYpCOezfJD67ZxpruGw0OzeO9NunIHRNsyuwZGIGjqq-O5ZsI5hYE8ZkltyH61v8Ssw6URLozW8Fk618UFfzt2cd7-ccE-rbwnnZUzWYfFYRHkqb1J0HkghxfaHuQjS6mC3ozOPhwrIm/s1213/9.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;46&quot; data-original-width=&quot;1213&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi87iu1guv05cWk0EeLtzdGYtLFq37MnTVIK7ZY4bXoTgf_iAUeaYpCOezfJD67ZxpruGw0OzeO9NunIHRNsyuwZGIGjqq-O5ZsI5hYE8ZkltyH61v8Ssw6URLozW8Fk618UFfzt2cd7-ccE-rbwnnZUzWYfFYRHkqb1J0HkghxfaHuQjS6mC3ozOPhwrIm/s16000/9.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  En rafraîchissant votre couche, vous verrez que le champ description_photo de
  la table attributaire de votre couche a été complété :&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI9Hg5biceySQPKwAPp4mI9J53Fo9t68PadwCOybaD3SGis8O_U6mqIhhAp25eCRqIA-FSm1ED9qhQ68JZmCFt70ziUOsG7-a6jveUbp_6EgcQDBC2kTrGYnYDxVL7GorgE9pwvnsusQhsONUYu7k5zREVTyFR6O12Hb87EHDm5NL53xZHUWd-65X2J20H/s992/10.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;632&quot; data-original-width=&quot;992&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI9Hg5biceySQPKwAPp4mI9J53Fo9t68PadwCOybaD3SGis8O_U6mqIhhAp25eCRqIA-FSm1ED9qhQ68JZmCFt70ziUOsG7-a6jveUbp_6EgcQDBC2kTrGYnYDxVL7GorgE9pwvnsusQhsONUYu7k5zREVTyFR6O12Hb87EHDm5NL53xZHUWd-65X2J20H/s16000/10.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  C&#39;est fini pour cet épisode ! Notez qu&#39;en plus de pouvoir analyser les images,
  le module
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.ai.html&quot; target=&quot;_blank&quot;&gt;arcgis.ai&lt;/a&gt;
  possède des capacités d&#39;analyse de texte et de traduction que vous pouvez
  également inclure à vos workflows d&#39;automatisation.
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/04/tutoriel-api-python-arcgis-2.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJE9NB8NXG1h1bQJnXpK5Aq1SVE9IiFYn2Mn9FiyPXWRjMqbsvSWNBNAb3kZCpIH6qoDBuwyu9HifPRl4QvKXiRxsyRgubiZj2SGKIhwPhxePgUhzK1RaPPeNaIDZU5H44HhjgvZy7VdXZovY5IVEDO_jyW6YBF4UWJZ8pGBq6F7ivLdJW-1B5cSUekm9W/s72-c/tuto-py-26-2-texte-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-7776688108061553349</guid><pubDate>Thu, 23 Apr 2026 12:14:00 +0000</pubDate><atom:updated>2026-04-23T14:14:00.110+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Game Engines</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><category domain="http://www.blogger.com/atom/ns#">Unity</category><category domain="http://www.blogger.com/atom/ns#">Unreal Engine</category><title>Quelles sont les nouveautés de la version 2.3 des SDKs d&#39;ArcGIS pour Unity et Unreal Engine ?</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 2.3 des SDKs d&#39;ArcGIS pour moteurs de jeu est disponible ! Elle
  apporte un affichage haute performance des données ponctuelles 3D et facilite
  la création d’expériences géospatiales 3D plus interactives et plus efficaces.
  Il est désormais possible de restituer de très grands volumes de données
  ponctuelles 3D de manière plus performante, avec la prise en charge de styles
  pilotés par les attributs pour visualiser les données à l’aide de différents
  types de rendu et de modèles 3D. L’identification des entités a également été
  améliorée pour les couches de scène de bâtiment, ce qui simplifie
  l’interaction avec des contenus architecturaux 3D complexes. Enfin,
  l’empreinte du SDK a été réduite, permettant de créer des projets plus légers
  sans compromettre les fonctionnalités.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center; display : none&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB_e4O1XXS_x5GGKjOh3GO9AZaJr2kHH_4NsRtt4YUZWGAxp7kfMUEOzBPyWoPzPhI_7qcQNN6Tmph9a8aaKrDy3YJCTujSMdEI3bEvsmapzhLFoIVunNWSm3MOzwLmT3PLk8oplZty4xjYVgiQ32LuAz-sECQOOAXf-VF_CWkYcR6vfsLE_HDlZgxkVJD/s1700/GE23_min.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;957&quot; data-original-width=&quot;1700&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB_e4O1XXS_x5GGKjOh3GO9AZaJr2kHH_4NsRtt4YUZWGAxp7kfMUEOzBPyWoPzPhI_7qcQNN6Tmph9a8aaKrDy3YJCTujSMdEI3bEvsmapzhLFoIVunNWSm3MOzwLmT3PLk8oplZty4xjYVgiQ32LuAz-sECQOOAXf-VF_CWkYcR6vfsLE_HDlZgxkVJD/s16000/GE23_min.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Couches de scène de points 3D&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les couches de scène de points 3D permettent de gérer efficacement un très
  grand nombre d’objets du monde réel, lorsque chacun d’eux est représenté dans
  une scène 3D par un symbole ponctuel unique, comme des arbres, du mobilier
  urbain, des capteurs ou des équipements d’infrastructure. Ces couches peuvent
  être affichées avec des rendus pilotés par les attributs, qui définissent les
  règles et les symboles utilisés pour catégoriser et représenter les données.
  &lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;tbody&gt;
      &lt;tr&gt;
        &lt;td style=&quot;text-align: center;&quot;&gt;
          &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_pRSwXO4S_NsDWMoPybDsjkun8YuEflkNu-vfZmaPkHYcy3Ck1rPxVcoT02W2J9wmrB5kkSPIC0QqYP0KQOBH1_JGCOyAWy6NLJrXsVpO-mQWK3d_99I02jSTT4Aukynuq3dUj9bfkgrmvkGM123C7WoxPjFvHa97dwImojBOy4t1SsI2Wx9YWb8A-nKk/s1920/Unity3DPointLayer-1920x1080-1.jpg&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_pRSwXO4S_NsDWMoPybDsjkun8YuEflkNu-vfZmaPkHYcy3Ck1rPxVcoT02W2J9wmrB5kkSPIC0QqYP0KQOBH1_JGCOyAWy6NLJrXsVpO-mQWK3d_99I02jSTT4Aukynuq3dUj9bfkgrmvkGM123C7WoxPjFvHa97dwImojBOy4t1SsI2Wx9YWb8A-nKk/s16000/Unity3DPointLayer-1920x1080-1.jpg&quot; /&gt;&lt;/a&gt;
        &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
        &lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;
          La couche Global Open 3D Trees rendue dans Unity via une couche de
          scène de points 3D
        &lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;
  &lt;/table&gt;
  Cette version prend en charge plusieurs types de rendus. Les rendus simples
  permettent d’appliquer un même symbole à toutes les entités. Les rendus par
  valeur unique permettent de différencier les entités en fonction de leurs
  attributs distincts. Les rendus par classes permettent de styliser les entités
  en fonction d’intervalles de valeurs dans des champs numériques. Quel que soit
  le type de rendu utilisé, les points peuvent désormais être symbolisés à
  l’aide de modèles 3D. D’autres types de symboles seront ajoutés dans les
  versions à venir.&lt;br /&gt;
  &lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-3iNajvidle6S__Vm0LViHsstjQIDkkVXyhqFJC3P9IkBjkM8bCgllETdEdw5EDVb-eGydTbEJZEkqx_dmCqe6ENkMQcWPMAcdY-EHx66HHzg3S83ONN10YI44X2l37nLO49yBr_fziWlxNAUikIp02K-Gkx9t1ES85jOlKVwJr-ujZYXNpGVetCvKgQh/s1920/UE3DPointLayer-1920x1080-1.jpg&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-3iNajvidle6S__Vm0LViHsstjQIDkkVXyhqFJC3P9IkBjkM8bCgllETdEdw5EDVb-eGydTbEJZEkqx_dmCqe6ENkMQcWPMAcdY-EHx66HHzg3S83ONN10YI44X2l37nLO49yBr_fziWlxNAUikIp02K-Gkx9t1ES85jOlKVwJr-ujZYXNpGVetCvKgQh/s16000/UE3DPointLayer-1920x1080-1.jpg&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Une couche de scène de points 3D représentant les arbres de Chicago&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    
  &lt;/div&gt;
  Les couches de scène de points 3D reposent sur une structure
  hiérarchique de niveaux de détail, appelée HLOD, qui affiche davantage de
  points à mesure que l’utilisateur se rapproche des données. L’allègement
  automatique des données en fonction de l’échelle améliore la lisibilité et
  permet une transmission et un affichage extrêmement rapides. Comme toutes les
  couches de scène 3D prises en charge par les SDKs d&#39;ArcGIS pour moteurs de
  jeux, elles peuvent être consommées depuis des services pour des applications
  connectées, ou depuis des packages embarqués sur l’appareil pour un usage hors
  ligne, offrant ainsi des performances maximales et une meilleure
  résilience.&lt;br /&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;
      Identification enrichie pour les couches de scène de bâtiments&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les méthodes d’identification de la classe
  &lt;a href=&quot;https://developers.arcgis.com/unity/api-reference/gameengine/view/arcgisview/&quot; target=&quot;_blank&quot;&gt;ArcGISView&lt;/a&gt;
  introduites lors de la version précédente ont été enrichies afin de récupérer
  les informations attributaires des entités dans les couches de scène de
  bâtiments. Ces informations constituent souvent la base de workflows plus
  avancés, dans lesquels l’utilisateur doit naviguer vers des objets identifiés,
  consulter leurs attributs ou mettre visuellement en évidence une entité.&lt;br /&gt;&lt;br /&gt;Il
  est par exemple possible de mettre en place un effet de surbrillance pour
  faciliter l’identification visuelle d’une entité en modifiant le shader
  associé à l’objet retourné par une opération d’identification, comme illustré
  dans l’exemple disponible dans le dépôt GitHub des échantillons du
  &lt;a href=&quot;https://github.com/Esri/arcgis-maps-sdk-unity-samples/blob/main/sample_project/Assets/SampleViewer/Samples/Identify/readme.md&quot; target=&quot;_blank&quot;&gt;SDK Unity&lt;/a&gt;, ou celui d&#39;&lt;a href=&quot;https://github.com/Esri/arcgis-maps-sdk-unreal-engine-samples&quot; target=&quot;_blank&quot;&gt;Unreal&lt;/a&gt;. D’autres cas d’usage courants incluent la comparaison d’attributs entre
  plusieurs entités ou l’interrogation de systèmes métiers afin d’afficher des
  informations associées à l’utilisateur.&lt;br /&gt;&lt;br /&gt;L’opération
  &lt;a href=&quot;https://developers.arcgis.com/unity/api-reference/gameengine/view/arcgisview/#identifylayerasync&quot;&gt;ArcGISView.IdentifyLayerAsync&lt;/a&gt;
  permet d’effectuer une requête d’identification asynchrone sur une couche
  spécifique, tandis que ArcGISView.IdentifyLayersAsync exécute cette opération
  sur l’ensemble des couches de scène d&#39;objets 3D et désormais également sur les
  couches de scènes de bâtiments présentes dans la carte. Ces méthodes
  facilitent la mise en œuvre de workflows centrés sur l’interaction
  utilisateur, en permettant de récupérer les attributs des entités à partir
  d’une position dans la scène.&amp;nbsp;Les paramètres d’entrée incluent un point
  de départ et un point cible, généralement la position de la caméra et le point
  sélectionné par l’utilisateur dans la scène. Ces nouvelles APIs simplifient le
  développement en évitant le recours à des opérations de raycast plus
  complexes, et contribuent à la création d’expériences plus riches et
  interactives pour l’exploration des données. À noter que le nouveau type de
  couche de scène de points 3D ne prend pas encore en charge le retour de
  résultats via les opérations d’identification, mais cette fonctionnalité est
  prévue dans une prochaine version.&lt;br /&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Des applications plus légères&lt;/span&gt;
  &lt;/h3&gt;
  Les SDK ArcGIS pour Unity et Unreal bénéficient d’une évolution commune de
  leur architecture native, avec des capacités SIG (accès aux données,
  traitement des géométries) entièrement implémentées en C++ et compilées en
  composants natifs optimisés pour des performances maximales et une portabilité
  multi-plateforme. Ces composants, déployés selon les systèmes cibles (par
  exemple .so sur Android, .dll sur Windows), sont désormais 25 % plus légers,
  ce qui se traduit par des déploiements d’applications plus compacts, des temps
  de démarrage réduits et un SDK globalement moins volumineux à télécharger et à
  stocker. Cette optimisation améliore aussi l’expérience de développement en
  accélérant la prise en main et en réduisant l’empreinte disque, un avantage
  notable pour les projets multi-applications sur Unity comme sur Unreal Engine.
  &lt;h3 style=&quot;text-align: justify;&quot;&gt;
    &lt;span&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Plus d&#39;informations&amp;nbsp;&lt;/span&gt;&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      Pour les informations complètes sur cette nouvelle version, rendez-vous
      dans les notes de version du SDK de votre choix :&amp;nbsp;&amp;nbsp;
    &lt;/div&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      &lt;ul&gt;
        &lt;li&gt;
          &lt;a class=&quot;text-inherit hover:text-citra-white hover:no-underline focus-visible:text-citra-white focus-visible:no-underline&quot; href=&quot;https://developers.arcgis.com/unity/release-notes/release-notes-2-3-0/&quot; target=&quot;_blank&quot;&gt;ArcGIS Maps SDK for Unity&lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
          &lt;a href=&quot;https://developers.arcgis.com/unreal-engine/release-notes/release-notes-2-3-0/&quot;&gt;ArcGIS Maps SDK for Unreal Engine&lt;/a&gt;
        &lt;/li&gt;
      &lt;/ul&gt;
      Pour mettre la main sur la version 2.1 des SDKs, rendez-vous sur la page
      de téléchargement du
      &lt;a href=&quot;https://developers.arcgis.com/downloads/&quot; target=&quot;_blank&quot;&gt;site Web d&#39;ArcGIS consacré aux développeurs&lt;/a&gt;,puis accédez à la page du SDK ArcGIS Maps de votre choix et
      téléchargez-le.&amp;nbsp; Si vous n&#39;avez pas l&#39;habitude de développer avec les
      SDKs d&#39;ArcGIS, il vous suffit de de vous rendre sur la page &quot;Get Started&quot;
      dans la documentation du
      &lt;a href=&quot;https://developers.arcgis.com/unity/get-started/&quot; target=&quot;_blank&quot;&gt;SDK ArcGIS Maps pour Unity&lt;/a&gt;
      ou du
      &lt;a href=&quot;https://developers.arcgis.com/unreal-engine/get-started/&quot; target=&quot;_blank&quot;&gt;SDK ArcGIS Maps pour Unreal Engine&lt;/a&gt;. Le SDK pour Unity est également directement disponible dans le
      &lt;a href=&quot;https://assetstore.unity.com/packages/tools/integration/arcgis-maps-sdk-for-unity-258537&quot; target=&quot;_blank&quot;&gt;Unity Asset Store&lt;/a&gt;.&amp;nbsp;&amp;nbsp;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://esrifrance.maps.arcgis.com/sharing/rest/content/items/022034d35c0b45299fe9aa7308825425/data&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
</description><link>https://www.codethemap.fr/2026/04/quelles-sont-les-nouveautes-de-la.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB_e4O1XXS_x5GGKjOh3GO9AZaJr2kHH_4NsRtt4YUZWGAxp7kfMUEOzBPyWoPzPhI_7qcQNN6Tmph9a8aaKrDy3YJCTujSMdEI3bEvsmapzhLFoIVunNWSm3MOzwLmT3PLk8oplZty4xjYVgiQ32LuAz-sECQOOAXf-VF_CWkYcR6vfsLE_HDlZgxkVJD/s72-c/GE23_min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-8336457570098830322</guid><pubDate>Wed, 22 Apr 2026 14:13:00 +0000</pubDate><atom:updated>2026-04-22T16:13:51.007+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><category domain="http://www.blogger.com/atom/ns#">Native Apps</category><title>Découvrez la version 300.0 des SDKs d&#39;ArcGIS pour applications natives</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7ueXvOWefDGd78vOOyKMjP_5h8fSGE5roB8hrZyy6eQOTqWKeQ60fSAelU0snQ2JnGDkfBEPZ-p9nPqs2lwQEQiDyGEDVK8su8Sr4jUlhlNEeuLhgQxhxvGzx3le73Pxev_1bgaO8zSp6Mn0dvfrXXpoyAiScptnYrNy7V_T5q3TV_HcgsAZmNfCJXwKG/s16000/300NA_min.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 300.0 des ArcGIS Maps SDKs for Native Apps constitue une étape
  majeure, introduisant des fonctionnalités importantes, dont certaines
  totalement inédites pour les SDK mobiles, ouvrant la voie à une nouvelle
  catégorie d’applications SIG.&amp;nbsp; Avec le passage de la version 200.8 à
  300.0, l’accent est mis sur l’extension des capacités, avec trois nouveautés
  majeures : les scènes locales, les couches de scène de bâtiment et un tout
  nouvel ensemble d’outils d’analyse spatiale.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7ueXvOWefDGd78vOOyKMjP_5h8fSGE5roB8hrZyy6eQOTqWKeQ60fSAelU0snQ2JnGDkfBEPZ-p9nPqs2lwQEQiDyGEDVK8su8Sr4jUlhlNEeuLhgQxhxvGzx3le73Pxev_1bgaO8zSp6Mn0dvfrXXpoyAiScptnYrNy7V_T5q3TV_HcgsAZmNfCJXwKG/s2845/300NA_min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1704&quot; data-original-width=&quot;2845&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7ueXvOWefDGd78vOOyKMjP_5h8fSGE5roB8hrZyy6eQOTqWKeQ60fSAelU0snQ2JnGDkfBEPZ-p9nPqs2lwQEQiDyGEDVK8su8Sr4jUlhlNEeuLhgQxhxvGzx3le73Pxev_1bgaO8zSp6Mn0dvfrXXpoyAiScptnYrNy7V_T5q3TV_HcgsAZmNfCJXwKG/s16000/300NA_min.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Scènes locales&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les SDKs pour applications natives prennent en charge la 3D depuis la version
  100.0, il y a environ dix ans, mais toujours dans un contexte global. Cela
  implique l’utilisation du système de coordonnées géographiques WGS84 pour
  l’affichage des données, et pour des performances optimales, ces données
  doivent généralement être publiées en WGS84 afin d’éviter une reprojection à
  la volée. Cette reprojection consomme des ressources CPU, ce qui peut
  entraîner une consommation accrue de batterie sur les appareils mobiles.
  Publier une copie distincte des données en WGS84 permet de contourner ce
  problème, mais introduit souvent une surcharge inutile.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette nouvelle version introduit le &lt;i&gt;local scene view&lt;/i&gt;. Il s’agit d’un
  tout nouveau composant d’interface que l’on peut intégrer à une application,
  permettant de travailler avec une scène locale, qu’elle provienne d’une scène
  web, d’un scene package mobile embarqué sur un appareil ou qu’elle soit créée
  via le code de l&#39;application. Une scène locale peut utiliser n’importe quel
  système de coordonnées projeté, en adéquation avec vos données publiées..&lt;br /&gt;&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhzhiVDKHwrXnvXVpJnvTgmeYHGIDFopYokCY4bDzItMgvTF0z64ANVNT6W7ZugBMlyE79U0k_e5ulHuFE7jpPALpP1td-vhKXbefw17oV_tl7dV1ZsG5pTDMT2vwtpVIEye_dEwQ2SqpUcEOTmIrV-zGCIuiMl7KIOy6PJc2mK4Z6JELzrqpPRkJby5mF/s1038/image-24.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;596&quot; data-original-width=&quot;1038&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhzhiVDKHwrXnvXVpJnvTgmeYHGIDFopYokCY4bDzItMgvTF0z64ANVNT6W7ZugBMlyE79U0k_e5ulHuFE7jpPALpP1td-vhKXbefw17oV_tl7dV1ZsG5pTDMT2vwtpVIEye_dEwQ2SqpUcEOTmIrV-zGCIuiMl7KIOy6PJc2mK4Z6JELzrqpPRkJby5mF/s16000/image-24.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  La vue de scène locale a été conçue de bout en bout pour exploiter au mieux
  les pipelines GPU modernes, ce qui apporte plusieurs avantages clés :&lt;br /&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Les performances ont été optimisée en séparant la gestion des données de
      leur rendu, permettant aux CPU et aux GPU de se concentrer sur leurs
      tâches respectives, réduisant ainsi la charge globale et la consommation
      de batterie.&amp;nbsp;
    &lt;/li&gt;
    &lt;li&gt;
      Cela permet également une gestion plus efficace de la mémoire, avec une
      meilleure capacité à gérer scènes complexes et aux situations de pression
      mémoire. Par exemple, il devient possible de distinguer une pression
      mémoire liée à la complexité des données d’une pression liée à leur
      volume, et d’y répondre différemment.
    &lt;/li&gt;
    &lt;li&gt;
      Le nouveau pipeline exploite les optimisations intrinsèques aux données
      3D, comme les symboles incluant plusieurs niveaux de détail (multi-LOD),
      afin d’afficher le meilleur niveau de fidélité en fonction de l’appareil,
      de la scène et du point de vue.&amp;nbsp;
    &lt;/li&gt;
    &lt;li&gt;
      Enfin, il permet de prendre en charge des rendus physiquement réalistes
      glTF (PBR), incluant matériaux, émissions lumineuses, occlusion ambiante
      et autres effets, pour valoriser visuellement les données.
    &lt;/li&gt;
  &lt;/ul&gt;
  L’ensemble de ces améliorations se traduit par de meilleures performances, une
  qualité visuelle accrue et une autonomie optimisée sur les appareils mobiles.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw9omhc3UkoYk_sg24QQ4xn_w5QD41zpZfGMOxOhEZKCN91YQRsMQ33UUUQGhYpBxYXnzbdELspIKmELbwN0X5-qjQhgBa2-eguIEUmvJlCe6cAtXG1S18Do3mibOk_DNR60zF6gVgSpLZzJhZ12bcxTNG5kf2dtCNMBREaHkvUH-0HOreDnaPurqyb5b8/s800/Emissions-timelapse_800_15fps.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;292&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw9omhc3UkoYk_sg24QQ4xn_w5QD41zpZfGMOxOhEZKCN91YQRsMQ33UUUQGhYpBxYXnzbdELspIKmELbwN0X5-qjQhgBa2-eguIEUmvJlCe6cAtXG1S18Do3mibOk_DNR60zF6gVgSpLZzJhZ12bcxTNG5kf2dtCNMBREaHkvUH-0HOreDnaPurqyb5b8/s16000/Emissions-timelapse_800_15fps.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Nouvelles APIs pour les scènes&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Plusieurs nouvelles API accompagnent la local scene view, supportant des
  capacités définies dans la
  &lt;a href=&quot;https://developers.arcgis.com/web-scene-specification/&quot; target=&quot;_blank&quot;&gt;spécification des scènes web&lt;/a&gt;&amp;nbsp;:
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Les scènes disposent désormais d’une propriété décrivant le mode
      d’affichage, local ou global. Cette information peut être lue depuis une
      scène web ou mobile, ou définie lors de la construction de la scène via le
      code. En l’absence de définition explicite, le mode global est utilisé par
      défaut, garantissant la compatibilité avec le code existant en version
      200.x.
    &lt;/li&gt;
    &lt;li&gt;
      Le contrôle du rendu de l’environnement est désormais défini directement
      au niveau de la scène.
    &lt;/li&gt;
    &lt;li&gt;
      Les scènes locales permettent de définir une zone de découpage afin de
      restreindre l’expérience à une zone d’intérêt spécifique.
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;div data-end=&quot;3912&quot; data-start=&quot;3761&quot;&gt;
    De nouveaux événements signalent également les incohérences entre types de
    scènes et de vues, ou les situations de pression mémoire dans la vue locale.
  &lt;/div&gt;
  &lt;div data-end=&quot;4258&quot; data-start=&quot;3914&quot;&gt;
    En tant que nouveau composant, certaines fonctionnalités ne sont pas encore
    disponibles dans les scènes locales. Cette première version est centrée sur
    les contenus 3D et ne prend pas encore en charge les couches d&#39;entités ni
    les couches graphiques. Ces limitations et leur feuille de route sont
    détaillées dans la documentation des SDKs .&lt;a href=&quot;https://developers.arcgis.com/net/scenes-3d/#scene-views&quot; target=&quot;_blank&quot;&gt;NET&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/flutter/scenes-3d/#scene-views&quot; target=&quot;_blank&quot;&gt;Flutter&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/kotlin/scenes-3d/#scene-views&quot; target=&quot;_blank&quot;&gt;Kotlin&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/qt/scenes-3d/#scene-views&quot; target=&quot;_blank&quot;&gt;Qt&lt;/a&gt;
    et
    &lt;a href=&quot;https://developers.arcgis.com/swift/scenes-3d/#scene-views&quot; target=&quot;_blank&quot;&gt;Swift&lt;/a&gt;.
  &lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    Cette expérience de scène locale repose sur les mêmes pipelines que ceux
    utilisés par les SDK ArcGIS pour Unity et Unreal Engine depuis
    2022.&amp;nbsp;&amp;nbsp;
  &lt;/div&gt;
  &lt;h3 data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Couches de scènes de bâtiment&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    Les couches de scène de bâtiment sont un type de couche 3D, essentiels pour
    les workflows AEC. Ellesl permettent de représenter des modèles BIM
    complexes avec un niveau de détail fin et des performances élevées. Ces
    couches sont désormais supportées pour la première fois dans les SDKs natifs
    via la nouvelle expérience de scène locale.&amp;nbsp;Au-delà de leur qualité
    visuelle, les couches de scène de bâtiment permettent d’explorer en
    profondeur les composants individuels des modèles de bâtiments, tant
    visuellement que via des APIs donnant accès aux données sous-jacentes.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmEv0p5VTrVkAODCwyUVa5TQhhU528buxeHqz_H50haMOxp7Lzq_Yle537VIf-xCRU9Nlx1MD_IZ4s916oIpBo7W5IWvOjkUqndGC1mSRB_r70AwVSBwKVvwJXamreMrE83Ic8naQL-9kTp9VpNmkQUXeGoZXbVwcsMSLXkNIRuXpkyB8-VLLsuzUXUOF8/s995/building-scene-layer-release-notes.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;668&quot; data-original-width=&quot;995&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmEv0p5VTrVkAODCwyUVa5TQhhU528buxeHqz_H50haMOxp7Lzq_Yle537VIf-xCRU9Nlx1MD_IZ4s916oIpBo7W5IWvOjkUqndGC1mSRB_r70AwVSBwKVvwJXamreMrE83Ic8naQL-9kTp9VpNmkQUXeGoZXbVwcsMSLXkNIRuXpkyB8-VLLsuzUXUOF8/s16000/building-scene-layer-release-notes.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  Les modes X-Ray et Wireframe permettent d’examiner facilement l’intérieur des
  modèles. Il est également possible de contrôler précisément les couches
  affichées, jusqu’au niveau des entités. Les objets peuvent être sélectionnés
  et identifiés pour consulter leurs attributs et afficher des infobulles. Les
  rendus de chaque sous-couche peuvent être modifiés dynamiquement afin de
  mettre en valeur certains éléments. Si les modèles intègrent des capacités
  glTF PBR, celles-ci sont restituées avec précision, en tenant compte notamment
  des ombres et de l’heure de la journée.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;
          &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVex4BAPPxNk51UMFFk5zUuGqXsevQQVX11ngiLj1IQhVIV7GbioqvGsiCJX7NZew_iWUVQP6uIchb7L7yDjJVvSEkcmqzBXT6Y3LrVbcbQ1IPxlnJXFtB84tFnhmppWwbWtgGQr0HKwIb20r8Cj4PdMIn0vQsa58lqjgiWhbg8XFKZFZPfq9z4uEzuDoo/s1400/bsl-with-pbr-emissions-small.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;924&quot; data-original-width=&quot;1400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVex4BAPPxNk51UMFFk5zUuGqXsevQQVX11ngiLj1IQhVIV7GbioqvGsiCJX7NZew_iWUVQP6uIchb7L7yDjJVvSEkcmqzBXT6Y3LrVbcbQ1IPxlnJXFtB84tFnhmppWwbWtgGQr0HKwIb20r8Cj4PdMIn0vQsa58lqjgiWhbg8XFKZFZPfq9z4uEzuDoo/s16000/bsl-with-pbr-emissions-small.jpg&quot; /&gt;&lt;/a&gt;Les API offrent un contrôle complet sur l’expérience, qu’il
            s’agisse de masquer des murs, d’afficher uniquement les réseaux
            électriques ou de se concentrer sur un étage
          spécifique.&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFi2wocQX1qbAajemNrhQ8PaPbcMn-c2-5cOOsRHYGyJveLTcdCFeeTih2XvadZ__OXusiNJQR6EbvOd1fBmRG4uMZJ-__aGtnPq_xV5s1bt5oCweVvw50bFGLDH9E2YrqLVdykChAZmuDcFW17uEcVg350OuSvr_WBuhgX7862rNcS6dhg2EmFGXs0Ixc/s897/BSL-explorer-hold.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;897&quot; data-original-width=&quot;879&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFi2wocQX1qbAajemNrhQ8PaPbcMn-c2-5cOOsRHYGyJveLTcdCFeeTih2XvadZ__OXusiNJQR6EbvOd1fBmRG4uMZJ-__aGtnPq_xV5s1bt5oCweVvw50bFGLDH9E2YrqLVdykChAZmuDcFW17uEcVg350OuSvr_WBuhgX7862rNcS6dhg2EmFGXs0Ixc/s16000/BSL-explorer-hold.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;En complément, Esri propose un nouveau toolkit&amp;nbsp; permettant
          d’explorer les building couches de scène en détail, avec un contrôle
          sur les étages et les sous-couches. Disponible initialement pour
          Flutter et Swift, il sera étendu à d’autres SDK dans les prochaines
          versions.&amp;nbsp;&lt;h3 data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Outils d’analyse spatiale&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    Le troisième pilier de la version 300.0 est un nouvel ensemble d’outils
    d’analyse spatiale. Conçus pour fonctionner directement sur les données à
    pleine résolution, ces outils offrent des performances très élevées et
    produisent des résultats exploitables pour la prise de décision, le stockage
    local ou l’affichage. Leur rapidité permet même des usages interactifs.&lt;br /&gt;&lt;br /&gt;Ces
    outils sont compatibles avec l’ensemble des plateformes cibles des Native
    Maps SDKs, des ordinateurs aux smartphones. Disposer de capacités
    analytiques aussi précises et performantes sur des appareils mobiles ouvre
    des perspectives inédites pour le développement d’applications.&lt;br /&gt;&lt;br /&gt;La
    première version inclut notamment l’analyse de visibilité (viewshed et ligne
    de visée), une API d’algèbre cartographique puissante et flexible, ainsi
    qu’un overlay d’analyse pour les workflows interactifs.
  &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7185ddYGMjQtC57ICC0453KaCVL3WtTYgN1M9eHezGvRPn-swbVWfg2YwfhnlgTZWRbHt-NrkEBsUOW_2S5gi2bZqiZ7ns7JLsWN6UqJeq2LglWx-PYXAWtGhjyI2fT3hCb1i-waUpS9aUYuFPtTLJjoX0f3zP6KP8HARXmx3I5WJYmN0wPQTDUo2XkxS/s764/viewshed-drone-anim.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;424&quot; data-original-width=&quot;764&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7185ddYGMjQtC57ICC0453KaCVL3WtTYgN1M9eHezGvRPn-swbVWfg2YwfhnlgTZWRbHt-NrkEBsUOW_2S5gi2bZqiZ7ns7JLsWN6UqJeq2LglWx-PYXAWtGhjyI2fT3hCb1i-waUpS9aUYuFPtTLJjoX0f3zP6KP8HARXmx3I5WJYmN0wPQTDUo2XkxS/s16000/viewshed-drone-anim.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    &lt;h4&gt;
      &lt;span style=&quot;font-size: large;&quot;&gt;Analyse embarquée dans les SDKs natifs&lt;/span&gt;
    &lt;/h4&gt;
    Historiquement, les SDKs natifs proposaient déjà des capacités d’analyse
    locale hors ligne, réparties en quatre grandes catégories :&amp;nbsp;
  &lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    &lt;ul&gt;
      &lt;li&gt;
        Analyse sur jeux de données : géocodage, analyse de réseau, analyse sur
        des utility network ;
      &lt;/li&gt;
      &lt;li&gt;
        analyse géométrique : comparaison, manipulation, reprojection
        géographiques de lignes, points et polygones en se basant sur le
        geometry engine ;
      &lt;/li&gt;
      &lt;li&gt;analyse visuelle 3D exploratoire ;&lt;/li&gt;
      &lt;li&gt;Local server.&lt;/li&gt;
    &lt;/ul&gt;
    Pour des analyses spatiales précises, deux approches étaient possibles : le
    geometry engine pour des géométries simples, ou le Local Server pour des
    analyses plus complexes impliquant des jeux de données complets et des
    logiques personnalisées, au prix d’une dépendance à des environnements
    spécifiques (Windows ou Linux) et à la nécessité de maintenir le Local
    Server en plus de votre application.&lt;br /&gt;&lt;br /&gt;Les analyses visuelles 3D
    permettaient des calculs rapides via le GPU, garantissant de très bonnes
    performances mais restant limitées aux données visibles à l’écran, avec une
    précision dépendante du rendu et sans production de résultats
    exploitables.&lt;br /&gt;&lt;br /&gt;La version 300.0 introduit une cinquième catégorie,
    combinant précision et performance. Les nouveaux outils travaillent sur les
    données sources à pleine résolution et s’appuient sur un pipeline GPU dédié,
    distinct de celui du rendu. Les résultats produits sont précis et peuvent
    être affichés, analysés, interrogés ou enregistrés.&amp;nbsp;
  &lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: large;&quot;&gt;Exploration des nouvelles APIs d’analyse&lt;/span&gt;
    &lt;/h3&gt;
    Le principe d’utilisation est simple : charger des données, définir une
    séquence d’opérations d’analyse, puis exécuter l’analyse ou l’afficher via
    un overlay.&lt;br /&gt;&lt;br /&gt;Les opérations peuvent être des analyses de
    visibilité (champ de vision et ligne de visée), des opérateurs d’algèbre
    cartographique, ou une combinaison des deux.&amp;nbsp;
  &lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;
    L&#39;extrait de code ci-dessous se base sur l&#39;API algébrique dans le SDK Swift
    pour classifier les données d&#39;élévation en 4&amp;nbsp; catégories et les
    afficher sur la carte dans des couleurs différentes.&amp;nbsp;
  &lt;/div&gt;
  &lt;div data-end=&quot;4523&quot; data-start=&quot;4260&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHF3lepk7pCrIKGsxK4M4T0SP5XCYITrpbdCHsmufJCoWUp86rP_cP2HISm5-S03FsymQFOwOgu8N9wsp05nU9dKitW9UE5iV7Kqw6JZKKd53Pta-5pSZAy9qsVcOTv4Q4cUkz8rF_HCkd3OSOhplZ2hQhzdfRazn-54dJLHWVHr4EPtah1jHPwcY9Rn64/s2560/map-algebra-reclassify-combo-scaled.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1027&quot; data-original-width=&quot;2560&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHF3lepk7pCrIKGsxK4M4T0SP5XCYITrpbdCHsmufJCoWUp86rP_cP2HISm5-S03FsymQFOwOgu8N9wsp05nU9dKitW9UE5iV7Kqw6JZKKd53Pta-5pSZAy9qsVcOTv4Q4cUkz8rF_HCkd3OSOhplZ2hQhzdfRazn-54dJLHWVHr4EPtah1jHPwcY9Rn64/s16000/map-algebra-reclassify-combo-scaled.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;A mesure que l’on construit une analyse en combinant différentes opérations,
  les APIs préparent un pipeline de calcul GPU optimisé à partir de ces
  opérations. Point essentiel, ce pipeline n’est pas exécuté tant que le
  résultat n’est pas explicitement demandé. D’un point de vue technique, Esri
  combine ici une &lt;i&gt;lazy evalution&lt;/i&gt; avec une fusion des opérations
  appliquées à la chaîne d’analyse. Cette approche permet aux APIs d’optimiser
  les traitements en regroupant les opérations avant leur exécution, ce qui
  réduit à la fois le temps de calcul et l’utilisation de la mémoire en évitant
  de produire ou de stocker des résultats intermédiaires.
&lt;/div&gt;&lt;/div&gt;
&lt;br /&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  L’un des aspects les plus intéressants de cette approche est la possibilité de
  modifier simplement les paramètres utilisés à n’importe quel niveau de la
  chaîne d’opérations, avec un impact immédiat sur le pipeline optimisé. Par
  exemple, si l’observateur d’une analyse de ligne de visée se déplace, il
  suffit de mettre à jour sa position telle qu’elle a été définie dans
  l’analyse, et le prochain calcul reflétera automatiquement cette nouvelle
  localisation. Si un overlay d’analyse est utilisé pour afficher les résultats
  sur une carte, son rendu se mettra à jour instantanément dès que la nouvelle
  position est fournie. Dans l&#39;exemple ci-dessous, plusieurs analyses de ligne
  de visée sont configurées à partir d’un seul observateur. En modifiant la
  position de cet observateur, l’ensemble des analyses est mis à jour, et ce de
  manière extrêmement rapide.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwpcaUh1320g5IEHvx2KI4ET69vg5CbPZiDIvvUdpa_2hjJgipyA6fMXLN8vS-GfhyxBrzXy7GYGOSrJ5Rd3InbXUmaK0PXZXg3qO38qxLi2jaK_hXepS8YV3p7f_MoPu51dI8DJR2cqqZWP5BPBvsspyRMCk3ztj080fBxb1lZnIFmeb-LpEbo-je3YuW/s800/LOS-Timings-cropped.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;460&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwpcaUh1320g5IEHvx2KI4ET69vg5CbPZiDIvvUdpa_2hjJgipyA6fMXLN8vS-GfhyxBrzXy7GYGOSrJ5Rd3InbXUmaK0PXZXg3qO38qxLi2jaK_hXepS8YV3p7f_MoPu51dI8DJR2cqqZWP5BPBvsspyRMCk3ztj080fBxb1lZnIFmeb-LpEbo-je3YuW/s16000/LOS-Timings-cropped.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Licence des APIs d&#39;analyse&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Afin d’aligner ces nouvelles capacités d’analyse des Native Maps SDKs avec
  celles de Local Server et d’ArcGIS Pro, les API de visibilité et de ligne de
  visée sont proposées avec un niveau de licence Standard, tandis que les
  opérations d’algèbre cartographique nécessitent l’extension Analysis.
  L’ensemble des API reste accessible gratuitement en mode développeur.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h4&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Évolutions prévues pour l&#39;analyse&lt;/span&gt;
  &lt;/h4&gt;
  Ces nouvelles capacités marquent le début d’une évolution plus large. D’autres
  outils sont déjà en préparation, à commencer par le calcul de pente,
  d’exposition et la conversion raster vers polygone. Les priorités de
  développement sont définies en fonction des retours des utilisateurs,
  notamment pour accompagner les développeurs dans la migration de leurs
  applications depuis Local Server et ArcGIS Engine. De nouvelles
  fonctionnalités d’analyse seront introduites à chaque version.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Évolutions des licences&lt;/span&gt;
&lt;/h3&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 300.0 introduit également un changement important concernant
  l’utilisation des chaînes de licence pour un usage en production.&lt;br /&gt;&lt;br /&gt;Pour
  rappel, deux modes de licence existent pour les applications basées sur les
  Native Maps SDKs : le mode utilisateur nommé, dans lequel l’utilisateur final
  se connecte à un compte ArcGIS Online ou ArcGIS Enterprise, et le mode par
  licence string (chaîne de licence), dans lequel le développeur intègre une
  chaîne de caractères fixe dans l’application.&lt;br /&gt;&lt;br /&gt;Dans le cas des
  utilisateurs nommés, aucun changement n’est à signaler. En revanche,
  l’utilisation des chaînes de licence évolue. À partir de la version 300.0,
  celles-ci sont désormais liées à une version majeure. Une chaîne de licence
  100.x reste valable pour les versions 100.x et 200.x, mais une nouvelle chaîne
  300.x est nécessaire pour utiliser les SDK en version 300.x.&lt;br /&gt;&lt;br /&gt;Pour
  les licences Lite gratuites, il suffit d’obtenir une nouvelle chaîne 300.x
  depuis &lt;a href=&quot;https://my.esri.com/&quot; target=&quot;_blank&quot;&gt;My Esri&lt;/a&gt;, accessible
  via la carte « ArcGIS Maps SDKs for Native Apps License Strings » sur la page
  d’accueil du tableau de bord.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjugybtZpdzFsnVpMOzAwbR4a40_iIJIZUvqwx_AoFjz6cXxftztWMDRnWeTelPRNub5l2tH3hPoXdRfpXxZYERpsyvB_Ilwioowp3Mdv1FKB2grbl2x86YVaAJbNsfDOvyRf4bUYXLPcPlVqgAZ2XV_dqMXRAYYd0aCMeCEBKMNkknhuzuxgk5KzCWZbq/s760/LicenseStringAtMyEsri-2.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;450&quot; data-original-width=&quot;760&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjugybtZpdzFsnVpMOzAwbR4a40_iIJIZUvqwx_AoFjz6cXxftztWMDRnWeTelPRNub5l2tH3hPoXdRfpXxZYERpsyvB_Ilwioowp3Mdv1FKB2grbl2x86YVaAJbNsfDOvyRf4bUYXLPcPlVqgAZ2XV_dqMXRAYYd0aCMeCEBKMNkknhuzuxgk5KzCWZbq/s16000/LicenseStringAtMyEsri-2.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;Si un message indique que le compte
  ArcGIS organisationnel n’est pas autorisé à accéder aux sites esri.com, il est
  nécessaire de contacter l’administrateur de l’organisation afin d’activer cet
  accès ou de définir un mode de distribution des chaînes de licence Lite.&lt;br /&gt;&lt;br /&gt;Pour
  les licences Basic, Standard, Advanced ou les extensions, de nouvelles chaînes
  300.x doivent être obtenues avant de déployer des applications avec les SDK
  300.x. Celles-ci sont fournies sans coût supplémentaire pour les clients
  disposant d’un contrat de maintenance actif. Dans le cas contraire, il
  convient de se rapprocher du gestionnaire de compte ou du service client
  Esri.&amp;nbsp;
&lt;br /&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Les autres nouveautés de la 300.x&lt;/span&gt;
  &lt;/h3&gt;
  Si les scènes locales, les couches de scène de bâtiment et les nouveaux outils
  d’analyse spatiale constituent les principales nouveautés de la version 300.0,
  de nombreuses autres nouveautés ont également été apportées :&lt;br /&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Un domaine notable concerne la prise en charge des courbes vraies. En
      version 300.0, celles-ci sont désormais disponibles hors ligne par défaut,
      affichables en 3D, et bénéficient d’un premier niveau de support dans
      l&#39;éditeur de géométries.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyeUsXu4jqvHcv-DXzoZusbDBNmFOjBR88tOXN2edwqZ2KIAAcmTs_41-_Pbq8Wj3bRa-i74nTviJPHHpdSR8fBAA8x5dDd76o6b00f-LC14v84vUtY2VlYzZ1exkLjBa-DbD1gm7aWz7Om2T2_wVdmmeiuDzHtzkF7DGSmH463YkaOtDujtE-Yltobk3Y/s500/geometry-editor-curve-anim.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;500&quot; data-original-width=&quot;500&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyeUsXu4jqvHcv-DXzoZusbDBNmFOjBR88tOXN2edwqZ2KIAAcmTs_41-_Pbq8Wj3bRa-i74nTviJPHHpdSR8fBAA8x5dDd76o6b00f-LC14v84vUtY2VlYzZ1exkLjBa-DbD1gm7aWz7Om2T2_wVdmmeiuDzHtzkF7DGSmH463YkaOtDujtE-Yltobk3Y/s16000/geometry-editor-curve-anim.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;
    &lt;li&gt;
      Le support des rasters a également été renforcé, avec de nouvelles
      capacités de colorisation, une meilleure gestion de l’interpolation selon
      les usages, et un accès étendu aux métadonnées permettant d’afficher les
      données à l’échelle la plus pertinente.
    &lt;/li&gt;
    &lt;li&gt;
      La prise en charge des templates partagés a été ajoutée, avec la lecture
      et l’utilisation de feature templates, preset templates et group templates
      depuis des feature services et des géodatabases. Ces templates sont
      couramment utilisés dans les utility networks, mais trouvent leur place
      dans de nombreux workflows de création de données. Les preset templates
      permettent de positionner plusieurs entités selon un motif prédéfini
      autour d’un point, tandis que les group templates appliquent des règles de
      construction complexes à partir d’une géométrie de base. Les feature
      templates permettent quant à eux de créer automatiquement des
      enregistrements liés lors de la création d’une entité.
    &lt;/li&gt;
    &lt;li&gt;
      La gestion des associations dans les utility networks via les formulaires
      d’entités s&#39;enrichit avec des fonctionnalités intégrées de création,
      modification et suppression.
    &lt;/li&gt;
    &lt;li&gt;
      Les API de navigation prennent désormais en charge les itinéraires
      piétons. Le composant RouteTracker adapte son comportement en conséquence,
      notamment pour la détection d’arrivée, le calcul des temps de parcours en
      fonction de la vitesse de marche, le déclenchement des événements liés aux
      manœuvres à venir, ou encore la prise en compte des demi-tours en tout
      point de l’itinéraire.
    &lt;/li&gt;
  &lt;/ul&gt;
  La version 300.0 inclut également d’autres améliorations ainsi que de
  nombreuses optimisations de performance et corrections, parmi lesquelles
  :&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;Un meilleur support des tuiles 3D photoréalistes Google ;&lt;/li&gt;
    &lt;li&gt;
      La gestion de pièces jointes volumineuses jusqu’à 1 Go dans les
      formulaires d’entités ;&amp;nbsp;
    &lt;/li&gt;
    &lt;li&gt;L’interrogation d’entités dynamiques par identifiant de trace ;&lt;/li&gt;
    &lt;li&gt;La modification de la référence spatiale d’une carte ;&lt;/li&gt;
    &lt;li&gt;Des améliorations d’accessibilité ;&lt;/li&gt;
    &lt;li&gt;
      Une nouvelle API permettant de calculer l’altitude pour plusieurs points
      simultanément, par exemple pour générer des profils altimétriques ;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7G_7edMT0PLcEGiiGCJVtOf_ov6us0A9SQGR6Aq6_VJND2IO8UEicc09DZMn7S7mUFO61ILxpGRfOoUtD7_NWTzuGKAYHVawa6HePvNhychnzeswj8cd-1l4rrY6moW9fnpyUFRwIky9j5_M-yzfXlJMqQAzgCMZgXpAhrwZAVnABzy_YL3z-tBZslO6_/s798/elevation-profile.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;516&quot; data-original-width=&quot;798&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7G_7edMT0PLcEGiiGCJVtOf_ov6us0A9SQGR6Aq6_VJND2IO8UEicc09DZMn7S7mUFO61ILxpGRfOoUtD7_NWTzuGKAYHVawa6HePvNhychnzeswj8cd-1l4rrY6moW9fnpyUFRwIky9j5_M-yzfXlJMqQAzgCMZgXpAhrwZAVnABzy_YL3z-tBZslO6_/s16000/elevation-profile.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;    &lt;/li&gt;
    &lt;li&gt;
      La prise en charge des cartes nautiques électroniques chiffrées S63 dans
      le SDK Qt sur toutes les plateformes supportées ;
    &lt;/li&gt;
    &lt;li&gt;La prise en charge des Photo Overlays dans les couches KML ;&amp;nbsp;&lt;/li&gt;
    &lt;li&gt;Un premier support des couches d’imagerie orientée ;&amp;nbsp;&lt;/li&gt;
    &lt;li&gt;
      le support des proxys forward pour le SDK Kotlin bénéficie du support des
      proxys forward ;&amp;nbsp;
    &lt;/li&gt;
    &lt;li&gt;
      L&#39;intégration des nouvelles API de gestion en arrière plan d&#39;iOS 26 dans
      le SDK Swift.
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;br /&gt;Le SDK Flutter poursuit sa montée en puissance vers la
  &lt;a href=&quot;https://developers.arcgis.com/flutter/parity/&quot; target=&quot;_blank&quot;&gt;parité fonctionnelle&lt;/a&gt;, avec l’ajout des entités dynamiques, des utility networks, des API de
  labellisation, de réduction d’entités et des callouts. Enfin, le SDK .NET
  &lt;a href=&quot;https://support.esri.com/en-us/knowledge-base/deprecation-arcgis-maps-sdk-for-net-000038832&quot; target=&quot;_blank&quot;&gt;abandonne le support&lt;/a&gt;
  de .NET Framework, UWP et Windows x86.&lt;br /&gt;&lt;br /&gt;De nombreuses autres
  évolutions sont disponibles et détaillées dans les notes de version des
  différents SDK : .NET, Flutter, Kotlin, Qt et Swift.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Conclusion&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 300.0 représente une évolution majeure pour les SDKs natifs
  d&#39;ArcGIS, avec des fonctionnalités structurantes qui vont orienter le
  développement des applications natives dans les années à venir. Esri met ces
  capacités à disposition pour un usage en production et prévoit de publier
  prochainement des articles dédiés à certaines de ces nouveautés.&lt;br /&gt;&lt;br /&gt;Pour
  adopter cette version, il suffit de mettre à jour les gestionnaires de
  dépendances ou de télécharger les dernières versions depuis le site
  développeur d’Esri. Lors d’une migration depuis la version 200.x, il est
  recommandé de passer d’abord par la version 200.8 afin de corriger les
  éventuelles dépréciations, ce qui permettra ensuite de passer à la version
  300.0 sans modification supplémentaire du code.&lt;br /&gt;&lt;br /&gt;Cette version
  marque le point de départ d’une série d’évolutions, notamment autour des
  outils d’analyse et de la vue de scène locale, avec l’ajout progressif de
  nouvelles capacités dans les versions à venir.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/04/decouvrez-la-version-3000-des-sdks.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7ueXvOWefDGd78vOOyKMjP_5h8fSGE5roB8hrZyy6eQOTqWKeQ60fSAelU0snQ2JnGDkfBEPZ-p9nPqs2lwQEQiDyGEDVK8su8Sr4jUlhlNEeuLhgQxhxvGzx3le73Pxev_1bgaO8zSp6Mn0dvfrXXpoyAiScptnYrNy7V_T5q3TV_HcgsAZmNfCJXwKG/s72-c/300NA_min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-4996648216171235608</guid><pubDate>Tue, 07 Apr 2026 13:02:00 +0000</pubDate><atom:updated>2026-04-07T15:16:07.012+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><category domain="http://www.blogger.com/atom/ns#">Python</category><title>Les nouveautés de la version 2.4.3 de l&#39;API Python d&#39;ArcGIS</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTfFEAJj_nGw7iVx3o8blQ583usgi_K2AV5B0Aadir9oGWmRidcmdPL3NN_omlsgt7FSBsy1ORTBcosKIdStt2QjegwjCfqS-3BsFRBVflV3PErXACSPLrDKG57ql9ZwGeOxYVLDlh1iVVUMu8XMbUf3o_qoJv8P9UtA5m1mBy_1dOrcyvbjzina1pTne/s16000/minia2Pyt243.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;  La version 2.4.3 de l&#39;API Python d&#39;ArcGIS est disponible depuis le 31 mars
  2026. Cette version étend l&#39;automatisation d&#39;ArcGIS, avec des nouveautés clés
  côté ArcGIS Dashboards, un nouveau module arcgis.ai et des nouvelles capacités
  pour l&#39;analyse raster. Dans cette article, je vous propose de découvrir
  ensemble les nouveautés principales de cette nouvelle version.&amp;nbsp;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTfFEAJj_nGw7iVx3o8blQ583usgi_K2AV5B0Aadir9oGWmRidcmdPL3NN_omlsgt7FSBsy1ORTBcosKIdStt2QjegwjCfqS-3BsFRBVflV3PErXACSPLrDKG57ql9ZwGeOxYVLDlh1iVVUMu8XMbUf3o_qoJv8P9UtA5m1mBy_1dOrcyvbjzina1pTne/s1000/minia2Pyt243.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;565&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTfFEAJj_nGw7iVx3o8blQ583usgi_K2AV5B0Aadir9oGWmRidcmdPL3NN_omlsgt7FSBsy1ORTBcosKIdStt2QjegwjCfqS-3BsFRBVflV3PErXACSPLrDKG57ql9ZwGeOxYVLDlh1iVVUMu8XMbUf3o_qoJv8P9UtA5m1mBy_1dOrcyvbjzina1pTne/s16000/minia2Pyt243.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  &lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Module arcgis.apps.dashboards&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans le cadre de l’évolution vers la nouvelle expérience avec ArcGIS
  Dashboards, le module classique ArcGIS Dashboards (arcgis.app.dashboard) a été
  retiré de l&#39;API et de la documentation. Si vous avez des scripts existants qui
  y font référence, c’est le moment de planifier une transition vers les outils
  Dashboards mis à jour.&lt;br /&gt;Le clonage et la migration des Dashboards sont
  nettement simplifiés en version 2.4.3 grâce au nouveau module
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.apps.dashboards.html&quot; target=&quot;_blank&quot;&gt;arcgis.apps.dashboard&lt;b&gt;s&lt;/b&gt;&lt;/a&gt;. L’accent est mis ici sur la gestion des dépendances des items au sein du
  contenu des Dashboards, afin de cloner avec davantage de fiabilité, en
  particulier lorsque vos Dashboards reposent sur des couches, des champs et
  d’autres contenus référencés qui doivent être embarqués avec eux.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1-Z2mW5zlZWb50-X99Ococ4VfFMhXHgn8T7p5JEkKAEYdjX1g_fxZSeJfsHIa_euv_TVOhsmNf3rpq0z7hfBHAvBpPMKjU8u-POqHSimzdL53YFoW6sdnGl_QwDC4PI1JM8mLDt8D9QDz8QW5I8n3ChQaJwISAM5PZquu9syynGmCNDrxf8G7mh-_SX_u/s624/Dashboard_Manager.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;264&quot; data-original-width=&quot;624&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1-Z2mW5zlZWb50-X99Ococ4VfFMhXHgn8T7p5JEkKAEYdjX1g_fxZSeJfsHIa_euv_TVOhsmNf3rpq0z7hfBHAvBpPMKjU8u-POqHSimzdL53YFoW6sdnGl_QwDC4PI1JM8mLDt8D9QDz8QW5I8n3ChQaJwISAM5PZquu9syynGmCNDrxf8G7mh-_SX_u/s16000/Dashboard_Manager.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Module arcgis.ai&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette version introduit le nouveau module
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.ai.html&quot; target=&quot;_blank&quot;&gt;arcgis.ai&lt;/a&gt;, qui regroupe les capacités d’analyse d’images et de texte dans un espace
  dédié au sein de l’API. Ce module est conçu pour faciliter le passage de
  l’exploration à des workflows opérationnels. Ce nouveau module étend les
  capacités d’IA intégrées de l’API Python en ajoutant des helpers de plus haut
  niveau pour les workflows d’analyse d’images et de texte, tout en introduisant
  également la prise en charge de la traduction. Vous pouvez par exemple
  utiliser ce module pour traduire du texte, analyser des images, résumer des
  documents ou extraire du texte, transformant ainsi des tâches manuelles en
  workflows SIG automatisés.&lt;br /&gt;&lt;br /&gt;Le module arcgis.ai repose actuellement
  sur des services ArcGIS Online encore en version beta, qui devraient passer en
  disponibilité générale dans une prochaine version. Ces services pourront
  également entraîner une consommation de crédits ArcGIS Online pour les
  transactions effectuées via le module arcgis.ai une fois sortis de beta.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4l-VaMdzaf5olodRpm-BjhmDT6jfgogtaxL5Z0sYIh9J-PqejD85CpOxDEDZ1EKcyxupKsnmG3cJBHk0wugZ7Pf3Hssr-cQ_Gk5wsHhraod3blRjPHp0JTvZW9Zj5KJUwukj97yLEcbVxagNpnADFQYAhUz1WlQvX63WLBriRDogjg0VqqY1umEf9XcI3/s624/Text_Analysis.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;382&quot; data-original-width=&quot;624&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4l-VaMdzaf5olodRpm-BjhmDT6jfgogtaxL5Z0sYIh9J-PqejD85CpOxDEDZ1EKcyxupKsnmG3cJBHk0wugZ7Pf3Hssr-cQ_Gk5wsHhraod3blRjPHp0JTvZW9Zj5KJUwukj97yLEcbVxagNpnADFQYAhUz1WlQvX63WLBriRDogjg0VqqY1umEf9XcI3/s16000/Text_Analysis.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Fonctions raster&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette version ajoute de nouvelles capacités dans
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.raster.analytics.html&quot; target=&quot;_blank&quot;&gt;arcgis.raster.analytics&lt;/a&gt;
  pour les workflows orientés imagerie et raster, notamment des outils prenant
  en charge les workflows spectraux et la détection d’anomalies dans les images.
  La fonction
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.raster.analytics.html#build-multidimensional-info&quot; target=&quot;_blank&quot;&gt;Build Multidimensional Info&lt;/a&gt;
  permet de créer des cubes image à partir de collections couvrant plusieurs
  temporalités, profondeurs ou altitudes. Ces ajouts élargissent les
  possibilités de détection, de mesure et de dérivation à partir de l’imagerie
  directement depuis Python dans des contextes d’automatisation.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Amélioration des workflows d&#39;administration&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Des efforts ont également été menés pour améliorer les workflows
  d’administration dans cette version. Les évolutions dans
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.admin.html#&quot; target=&quot;_blank&quot;&gt;arcgis.gis.admin&lt;/a&gt;
  introduisent de nouvelles classes et fonctions (en particulier pour ArcGIS
  Enterprise on Kubernetes) afin de permettre de gérer plus directement les
  tâches d’administration courantes en Python à mesure que les déploiements
  montent en charge et en maturité.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Documentation du SDK&amp;nbsp;&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  De nouveaux guides et exemples mettent en avant des approches pour maintenir
  vos scripts et workflows alignés avec les évolutions à venir et les nouvelles
  capacités de la plateforme. Cela inclut des recommandations étendues sur
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/working-with-different-authentication-schemes/&quot; target=&quot;_blank&quot;&gt;l’authentification pour les usages orientés développeurs&lt;/a&gt;
  via la classe DeveloperCredentialManager, des parcours mis à jour autour de
  l’administration et des applications ArcGIS, la
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/introduction-to-dashboards-module/&quot; target=&quot;_blank&quot;&gt;nouvelle expérience arcgis.apps.dashboards&lt;/a&gt;, ainsi qu’&lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/introduction-to-storymaps/&quot; target=&quot;_blank&quot;&gt;ArcGIS StoryMaps&lt;/a&gt;, avec notamment le
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/cloning-editing-storymap/&quot; target=&quot;_blank&quot;&gt;clonage et l’édition de StoryMaps&lt;/a&gt;, et des introductions aux
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/storymap-briefings/&quot; target=&quot;_blank&quot;&gt;Briefings&lt;/a&gt;
  et&amp;nbsp; aux
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/storymap-collection/&quot; target=&quot;_blank&quot;&gt;Collections&lt;/a&gt;.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Plateformes supportées&lt;/span&gt;&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div style=&quot;text-align: left;&quot;&gt;
    &lt;ul style=&quot;text-align: left;&quot;&gt;
      &lt;li&gt;
        Python : 3.13 (principal), avec support secondaire pour 3.10, 3.11, 3.12
        et 3.14.&amp;nbsp;
      &lt;/li&gt;
    &lt;/ul&gt;
    &lt;ul style=&quot;text-align: left;&quot;&gt;
      &lt;li&gt;Produits Esri :&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: left;&quot;&gt;
    &lt;ul style=&quot;text-align: left;&quot;&gt;
      &lt;ul&gt;
        &lt;li&gt;
          ArcGIS Pro 3.7 et ultérieur, environnements par défaut et clonés ;&lt;/li&gt;
        &lt;li&gt;ArcGIS Enterprise 12.1 (inclus avec ArcGIS Notebook runtime v14.0) ;
        &lt;/li&gt;
        &lt;li&gt;ArcGIS Online : mise à jour de juin 2026.&lt;/li&gt;
      &lt;/ul&gt;
    &lt;/ul&gt;
    &lt;ul style=&quot;text-align: left;&quot;&gt;
      &lt;li&gt;
        Environnements Python standalone, via
        &lt;a href=&quot;https://anaconda.org/channels/Esri/packages/arcgis/overview&quot; target=&quot;_blank&quot;&gt;Conda&lt;/a&gt;
        ou
        &lt;a href=&quot;https://pypi.org/project/arcgis/&quot; target=&quot;_blank&quot;&gt;PyPI&lt;/a&gt;.
      &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;En savoir +&lt;/span&gt;&lt;/h3&gt;
  Comme d&#39;habitude, les &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/release-notes-243/&quot; target=&quot;_blank&quot;&gt;notes de versions&lt;/a&gt; vous donneront la liste complètes des
  nouveautés, ainsi que les &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/release-notes-243/#fixes&quot; target=&quot;_blank&quot;&gt;corrections de bugs&lt;/a&gt; et les dépréciations.&lt;br /&gt;En
  plus de cela, de nombreuses ressources sont disponibles pour obtenir de l’aide
  et partager des retours sur l’API :&amp;nbsp;&lt;br /&gt;
  &lt;ul&gt;
    &lt;li&gt;
      La
      &lt;a href=&quot;https://community.esri.com/t5/arcgis-api-for-python/ct-p/arcgis-api-for-python?aduc=PublicRelations&amp;amp;sf_id=7015x000000vfizAAA&amp;amp;aduco=sept-2024-release-blog&amp;amp;aduca=MIArcGISAPIForPythonDeveloper&amp;amp;utm_id=7015x000000vfizAAA&amp;amp;adum=Blog&amp;amp;utm_campaign=MIArcGISAPIForPythonDeveloper&amp;amp;utm_source=PublicRelations&amp;amp;utm_medium=Blog&amp;amp;utm_content=sept-2024-release-blog&quot; target=&quot;_blank&quot;&gt;communauté ArcGIS API for Python d&#39;Esri Community&lt;/a&gt;
      pour poser des questions et suggérer des améliorations&amp;nbsp;;
    &lt;/li&gt;
    &lt;li&gt;
      Le
      &lt;a href=&quot;https://github.com/Esri/arcgis-python-api/&quot; target=&quot;_blank&quot;&gt;repo Github public de l&#39;API Python&lt;/a&gt;
      pour signaler des bugs et proposer des évolutions.
    &lt;/li&gt;
  &lt;/ul&gt;
  Les retours que vous pouvez faire dans ces espaces communautaires sont
  activement suivis par l&#39;équipe de développeurs de l&#39;API, qui s&#39;en servent pour
  orienter les priorité pour le développement des futures versions, donc
  n&#39;hésitez pas à vous y exprimer !
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY3smrDUz63ZWDBoZlqPI3IOgxgz7jJi2XvWLv3RRcnVU_VpiDmEstCHlThKpGuihmr3CIF9NCXVwRTa_FkyYCQUutPpdxP_hqF4d7TG8GRB6Gsek__7E_LelepNG00B9Ye63uQOAFWptZCxjhHlpZNS_n0DcebTTWJsPshu6DPZqt2qWAZmKq4lojJwZ1/s627/macotte243.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;627&quot; data-original-width=&quot;590&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY3smrDUz63ZWDBoZlqPI3IOgxgz7jJi2XvWLv3RRcnVU_VpiDmEstCHlThKpGuihmr3CIF9NCXVwRTa_FkyYCQUutPpdxP_hqF4d7TG8GRB6Gsek__7E_LelepNG00B9Ye63uQOAFWptZCxjhHlpZNS_n0DcebTTWJsPshu6DPZqt2qWAZmKq4lojJwZ1/s320/macotte243.png&quot; width=&quot;301&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;</description><link>https://www.codethemap.fr/2026/04/les-nouveautes-de-la-version-243-de.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRTfFEAJj_nGw7iVx3o8blQ583usgi_K2AV5B0Aadir9oGWmRidcmdPL3NN_omlsgt7FSBsy1ORTBcosKIdStt2QjegwjCfqS-3BsFRBVflV3PErXACSPLrDKG57ql9ZwGeOxYVLDlh1iVVUMu8XMbUf3o_qoJv8P9UtA5m1mBy_1dOrcyvbjzina1pTne/s72-c/minia2Pyt243.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-6802546972780707979</guid><pubDate>Fri, 20 Mar 2026 00:28:00 +0000</pubDate><atom:updated>2026-03-20T15:40:53.168+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Agents</category><category domain="http://www.blogger.com/atom/ns#">IA</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Intégrer des agents IA à vos applications cartographiques avec ArcGIS</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ2UOR7JuHetsYp3QDOYiLc6-FGpuQk0qlshc4o8cpcqUbiPzWttNU-oR2g9IIRElAiOwh3VjUEK9vsHI7nqf30OYZawgG56qSjQHCPgyZB8v30KQOYE3bDwWDMTmVlPftRJgiPZZ9sIVQJf5Xz3e2NuGUyBX1K2vAMxpzY8qSC2Bo4W5Q6av7kFosH66e/s1600/minia-ai-sdkjsv2-redim.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ2UOR7JuHetsYp3QDOYiLc6-FGpuQk0qlshc4o8cpcqUbiPzWttNU-oR2g9IIRElAiOwh3VjUEK9vsHI7nqf30OYZawgG56qSjQHCPgyZB8v30KQOYE3bDwWDMTmVlPftRJgiPZZ9sIVQJf5Xz3e2NuGUyBX1K2vAMxpzY8qSC2Bo4W5Q6av7kFosH66e/s1600/minia-ai-sdkjsv2-redim.jpg&quot; style=&quot;display: none; padding: 1em 0; text-align: center; &quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; data-original-height=&quot;837&quot; data-original-width=&quot;1492&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ2UOR7JuHetsYp3QDOYiLc6-FGpuQk0qlshc4o8cpcqUbiPzWttNU-oR2g9IIRElAiOwh3VjUEK9vsHI7nqf30OYZawgG56qSjQHCPgyZB8v30KQOYE3bDwWDMTmVlPftRJgiPZZ9sIVQJf5Xz3e2NuGUyBX1K2vAMxpzY8qSC2Bo4W5Q6av7kFosH66e/s1600/minia-ai-sdkjsv2-redim.jpg&quot;/&gt;&lt;/a&gt;&lt;/div&gt;
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/&quot; target=&quot;_blank&quot;&gt;Les composants IA&lt;/a&gt;
  sont la nouveauté phare de
  &lt;a href=&quot;https://www.codethemap.fr/2026/03/version-5-0-sdk-javascript-arcgis.html&quot; target=&quot;_blank&quot;&gt;la version 5.0 du SDK JavaScript d&#39;ArcGIS&lt;/a&gt;. Intégrés à vos applications cartographique, ils ont pour but d&#39;aider vos
  utilisateurs à naviguer dans vos cartes et vos données via des interactions en
  langage naturel. Ainsi, les agents que vous pouvez ajouter à vos applications
  les rendent plus simples à explorer et à comprendre, notamment pour des
  utilisateurs finaux qui ne seraient pas habitués à manipuler des données
  géographiques.&amp;nbsp;Dans cet article, je vous propose de découvrir ensemble ces agents : quelles
  tâches peuvent-ils effectuer,&amp;nbsp;comment les intégrer à son application
  et&amp;nbsp;comment préparer au mieux ses données pour un fonctionnement
  optimal.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://japalenos.github.io/JS-API/Ask-the-Assistant/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiza7sGYJ6RvBnNcrOyU319pooOvZf4JGgSY-h8xENNZiPuLtFWOF6mgNXC14cnb2oEbpLNwgbq9G67yJoFL9NSLCeqI7DHabjdVS8XhMeTox3UvOT331KgyJyBA4JJakvJuERoZaMTJYgX4Ea4lFe_a8lXkzwgQPdFOjX8uNdgdDpeodubj2YE4RyS7E8Z/s16000/demo-js-sdk-aiagents.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;i&gt;L&#39;application est accessible &lt;a href=&quot;https://japalenos.github.io/JS-API/Ask-the-Assistant/&quot; target=&quot;_blank&quot;&gt;ici&lt;/a&gt; avec un compte ArcGIS Online. Vous pouvez consulter l&#39;ensemble du code en mode bac à sable sur &lt;a href=&quot;https://codepen.io/japalenos/pen/ZYpbdZa&quot; target=&quot;_blank&quot;&gt;CodePen&lt;/a&gt; ou directement sur &lt;a href=&quot;https://github.com/JapaLenos/JS-API/tree/main/Ask-the-Assistant&quot; target=&quot;_blank&quot;&gt;Github&lt;/a&gt;. L&#39;article explique le code pas à pas pour parvenir à ce résultat.&lt;/i&gt;&amp;nbsp;&lt;i&gt;Notez que pour l&#39;instant, ces fonctionnalités sont disponibles en bêta.
    Elles fonctionnent avec ArcGIS Online, et sont prévues pour la version 12.2
    d&#39;ArcGIS Enterprise.&amp;nbsp;&lt;/i&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Préparation des données&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  A l&#39;heure actuelle, les agents sont capables d&#39;interroger uniquement des
  couches d&#39;entités hébergées, intégrées à une webmap. Vous pouvez ajouter
  d&#39;autres types de couches dans votre carte, mais ils ne seront pas pris en
  compte par les agents.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Métadonnées&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Une fois
  &lt;a href=&quot;https://www.codethemap.fr/2025/03/carto-web-no-code-low-code-arcgis.html&quot; target=&quot;_blank&quot;&gt;votre webmap configurée&lt;/a&gt;,&amp;nbsp;la première étape pour permettre aux agents de fonctionner est de
  &lt;b&gt;compléter les métadonnées&lt;/b&gt;. Plus vos métadonnées seront complètes, plus
  les agents comprendront rapidement à quoi servent les données, sur quels
  champs ils peuvent s&#39;appuyer pour répondre à vos questions, etc. Les
  métadonnées doivent êtres remplies à différents niveaux :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Les feature layers et chacune de leurs couches : description, résumé,
      titre, balises ;
    &lt;/li&gt;
    &lt;li&gt;Les champs des couches : noms, alias et description clairs.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;div&gt;
    On le sait, modifier les métadonnées, c&#39;est long, parfois laborieux, et loin
    d&#39;être l&#39;activité favorite de tout le monde. Surtout si vos couches
    contiennent de nombreux champs. ArcGIS intègre depuis récemment un assistant
    IA permettant de vous épauler dans cette étape. Dans le feature layer et
    dans les couches, trouverez une nouvelle option &quot;Suggérer&quot;, qui va analyser
    vos données pour proposer automatiquement un titre, une description, un
    résumé et des balises. Vous pouvez ensuite les passer en revue, les modifier
    et les affiner si nécessaire, puis les appliquer.&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpGSDd3RGGkM3JQ9wEnZZKkVIf98ADAn74r_oMmy4Nt97YEsa3g22PXLLv_rV64S_SOaKHR7ISUzS_sFJxhrnieRtf2RJCU7pzPMGZFEAN1JhKFdOmXdWOP6tYajJWNPnEG7o3fr_YoHK1Tgs_IlwqtYwnfPfNTwXt8lGfqS8QdrC6KifJcBR-3VULwqf7/s1470/assistant-ia-metadata.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;944&quot; data-original-width=&quot;1470&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpGSDd3RGGkM3JQ9wEnZZKkVIf98ADAn74r_oMmy4Nt97YEsa3g22PXLLv_rV64S_SOaKHR7ISUzS_sFJxhrnieRtf2RJCU7pzPMGZFEAN1JhKFdOmXdWOP6tYajJWNPnEG7o3fr_YoHK1Tgs_IlwqtYwnfPfNTwXt8lGfqS8QdrC6KifJcBR-3VULwqf7/s16000/assistant-ia-metadata.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    De la même manière, vous retrouverez une option similaire au niveau des
    champs, qui vous permettra de suggérer un nom d&#39;affichage, une description
    et un type de valeur.&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsQtmyLDt4V5-jd8dqQaiLLW7ZKV2TZcYbJb2FMc_DrYHlzGc-fOhffD8Ib5SpdrEa8HB8gsZaXX_0ZcgXoBe2_tstW8weoZZhv0z0xkkGq1qwXbJ2NjVpUF9wRE6RNNbW7F9DxFMMMBC-T7XtMIfyjMC-js56QG6NwQfY3xsUIf34_qNLaKnMdS0u7je0/s1470/assistant-ia-metadata-champs.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;944&quot; data-original-width=&quot;1470&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsQtmyLDt4V5-jd8dqQaiLLW7ZKV2TZcYbJb2FMc_DrYHlzGc-fOhffD8Ib5SpdrEa8HB8gsZaXX_0ZcgXoBe2_tstW8weoZZhv0z0xkkGq1qwXbJ2NjVpUF9wRE6RNNbW7F9DxFMMMBC-T7XtMIfyjMC-js56QG6NwQfY3xsUIf34_qNLaKnMdS0u7je0/s16000/assistant-ia-metadata-champs.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div&gt;
    Pour modifier les métadonnées, vous devez être propriétaire ou avoir accès
    en écriture aux couches d&#39;entités. Notez que si ça n&#39;est pas le cas, vous
    pouvez tout de même intégrer les couches à votre carte. Si les métadonnées
    sont incomplètes, le LLM les génèrera lui-même à l&#39;étape suivante,
    permettant tout de même aux agents de questionner la couche. Cependant, ces
    métadonnées ne seront pas persistantes, et vous n&#39;y aurez pas accès ; vous
    ne pourrez donc pas contrôler comment le contenu de vos couches a été
    interprété.
  &lt;/div&gt;
  &lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Embeddings&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Après avoir complété les métadonnées, il faut&amp;nbsp;&lt;b&gt;générer les embeddings&lt;/b&gt;
  de la carte.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En quelques mots, cette opération consiste à transformer le contenu de la
  webmap en vecteurs numériques. Lorsque vous poserez une question à
  l’assistant, elle sera elle aussi convertie en vecteurs, que l’agent compare à
  ceux de la webmap pour rechercher les similarités et ainsi identifier
  rapidement les réponses les plus pertinentes.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour générer les embeddings, rendez-vous dans les paramètres de votre webmap,
  puis cliquez sur le bouton &quot;Générer les intégrations&quot; tout en bas de la page.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-OwKoiqdR35sUkXAWxCmfVBYaWkszZ-VvVF-ZQv6j85gTI_14-0jGWT6oVrTWqudE-nAMwpraydb8KNUj_h0iz8HRdOQ0tvYQMjkjJMtNWEEtpD7JgAfb_khiKfnhv-xBQyyv2zNnb87tsThq_UoSFgZScyYFW6uKhHpPWohMeX-pNUUCIQKSfWE8aMjo/s1470/webmap-embeddings.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;944&quot; data-original-width=&quot;1470&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-OwKoiqdR35sUkXAWxCmfVBYaWkszZ-VvVF-ZQv6j85gTI_14-0jGWT6oVrTWqudE-nAMwpraydb8KNUj_h0iz8HRdOQ0tvYQMjkjJMtNWEEtpD7JgAfb_khiKfnhv-xBQyyv2zNnb87tsThq_UoSFgZScyYFW6uKhHpPWohMeX-pNUUCIQKSfWE8aMjo/s16000/webmap-embeddings.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Attention, si vous modifiez votre webmap (ajoutez une couche, modifiez un
  champ...), il faudra alors re-générer les embeddings pour que les agents aient
  accès aux informations les plus à jour.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Autres bonnes pratiques&amp;nbsp;&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Si les résultats des agents ne vous semble pas optimaux, plusieurs bonnes
  pratiques peuvent être observées pour améliorer les résultats :&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Ne pas inclure trop de couches ne rentrant pas dans les cas d&#39;usages pour
      lesquelles vous souhaitez questionner l&#39;agent. Ces couches diminuent ses
      performances.
    &lt;/li&gt;
    &lt;li&gt;
      Conserver uniquement les champs de la couche pertinents pour une
      interaction avec l&#39;agent. Cela peut être fait en se servant d&#39;une
      &lt;a href=&quot;https://doc.arcgis.com/fr/arcgis-online/manage-data/create-hosted-views.htm&quot; target=&quot;_blank&quot;&gt;vue&lt;/a&gt;
      par exemple. Préférer des couches avec une seule thématique précise qu&#39;une
      couche contenant beaucoup d&#39;informations de différentes natures.&amp;nbsp;
    &lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Présentation des Agents et du composant Assistant&lt;/span&gt;
&lt;/h3&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Assistant&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant &lt;b&gt;&amp;lt;arcgis-assistant&amp;gt;&lt;/b&gt; fournit l&#39;interface&amp;nbsp;de
  discussion permettant aux utilisateurs finaux d’interagir avec une webmap via
  un ou plusieurs agents.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7IW7rdJZF6pRqlSu1CnQEvS3deGYsPUT4hvekPP3t6sDaOvGwmzP33lzqr-uAbZAjfQDOwQHNJCv-cfqUbfmi0TwksEGCmPFtSjHSnaa18_6tt1Sdtp_L-j6cw-sLNTuHyq6FRW_DKiG62yAf961PWSI-Oi44-GjSr2KsME0QxHC2rmhWOqlEddj5IDaI/s3365/assistant-composant.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2489&quot; data-original-width=&quot;3365&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7IW7rdJZF6pRqlSu1CnQEvS3deGYsPUT4hvekPP3t6sDaOvGwmzP33lzqr-uAbZAjfQDOwQHNJCv-cfqUbfmi0TwksEGCmPFtSjHSnaa18_6tt1Sdtp_L-j6cw-sLNTuHyq6FRW_DKiG62yAf961PWSI-Oi44-GjSr2KsME0QxHC2rmhWOqlEddj5IDaI/s16000/assistant-composant.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Qu&#39;est-ce qu&#39;un agent ?&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les agents traitent les entrées en langage naturel à l’aide d’un grand modèle
  de langage (LLM) afin de générer des réponses, soit sous forme de texte, soit
  en exécutant un outil ou une action qui interagit avec la carte.&lt;br /&gt;En
  coulisses, les agents sollicitent le LLM pour déterminer l’intention de
  l’utilisateur, définir les paramètres des outils ou résumer des informations.
  Bien que les appels au LLM soient effectués côté serveur, le SDK JavaScript
  Maps définit et exécute la logique principale des agents dans le navigateur,
  permettant ainsi des interactions performantes entre les utilisateurs et
  l’application cliente.&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  D&#39;un point de vue fondamental, les agents possèdent les composants suivants :
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZjsyFcD6NhVHn-OxfD9NQN8pmGMFbvdIk1O2DkD6ZU6wwDg9_sRudObn0Z44ikLk8qiiaOHCQK2Jssip6iOnDC_7sG6hmjYjkcrEE2RsCwDfcld_ZMhk-QI4_hr31hbOqzlSzewEvZLiyfa9HI-ZNzJkveTOQAVHEBr0ivjFTBu7Gq-P-CQENEEjcuBco/s2902/Architecture-Agents.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1537&quot; data-original-width=&quot;2902&quot; height=&quot;338&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZjsyFcD6NhVHn-OxfD9NQN8pmGMFbvdIk1O2DkD6ZU6wwDg9_sRudObn0Z44ikLk8qiiaOHCQK2Jssip6iOnDC_7sG6hmjYjkcrEE2RsCwDfcld_ZMhk-QI4_hr31hbOqzlSzewEvZLiyfa9HI-ZNzJkveTOQAVHEBr0ivjFTBu7Gq-P-CQENEEjcuBco/w640-h338/Architecture-Agents.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Les p&lt;b&gt;rompts système&lt;/b&gt; sont des instructions qui guident le
      comportement de l&#39;agent et ses réponses. Ils sont définis par le créateur
      de l&#39;agent, et l&#39;utilisateur final n&#39;a pas la main dessus.
    &lt;/li&gt;
    &lt;li&gt;
      Le &lt;b&gt;contexte&lt;/b&gt; rassemble les informations sur lesquelles s&#39;appuie
      l&#39;assistant pour générer des réponses. Dans le cas des agents ArcGIS, il
      s&#39;agit des données issues de la webmap.
    &lt;/li&gt;
    &lt;li&gt;
      Les &lt;b&gt;outils&lt;/b&gt; sont des fonctions prédéfinies que l&#39;agent peut utiliser
      pour interagir avec la carte ou réaliser des tâches spécifiques. Ici, ces
      outils s&#39;appuient sur les fonctionnalités du SDK JavaScript d&#39;ArcGIS pour
      interroger des couches, ou effectuer un zoom ou un déplacement.
    &lt;/li&gt;
    &lt;li&gt;
      L&#39;agent génère un &lt;b&gt;résultat&lt;/b&gt; en fonction de l&#39;intention de
      l&#39;utilisateur. Il peut s&#39;agir d&#39;une simple réponse textuelle ou de
      l&#39;exécution d&#39;un outil interagissant avec la carte.
    &lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le SDK JavaScript d&#39;ArcGIS possède actuellement 3 agents prêts à l&#39;emploi, et
  vous offre également la capacité d&#39;intégrer vos propres agents personnalisés.
  Notez que les agents personnalisés peuvent se baser sur le LLM de votre choix,
  à condition de mettre en place votre propre backend pour accéder à ces LLM.
  Cependant, vous ne pouvez pas changer le LLM utilisé par les agents prêts à
  l&#39;emploi et l&#39;orchestrateur (dont nous reparlerons après).
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Agent de navigation&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  L’agent de navigation permet à l’utilisateur de se déplacer vers différentes
  zones d’une webmap. Cela inclut la navigation vers une adresse ou un nom de
  lieu, l’emprise d’une couche, des entités au sein d’une couche, des géosignets
  de la webmap ou encore des coordonnées.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7aB2AWeHKCzPbO-MsAwKtlpCPITCVYL2-3Z9XAB5cjXUrZWDHFt1kDHNTCS14UsjcJnLQNccyOOaM2ikALNUDNtmLvblu1qnieLJeyyvKhiWTM-K9_J8-233Ff0nC8tXcR-XmiI-2EBLp0UnZMQgX6PpqD2k7rmXX3g5lyC2PbwajqT7eKJ0Dodl2dK7i/s1456/navigation-exemple.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;842&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7aB2AWeHKCzPbO-MsAwKtlpCPITCVYL2-3Z9XAB5cjXUrZWDHFt1kDHNTCS14UsjcJnLQNccyOOaM2ikALNUDNtmLvblu1qnieLJeyyvKhiWTM-K9_J8-233Ff0nC8tXcR-XmiI-2EBLp0UnZMQgX6PpqD2k7rmXX3g5lyC2PbwajqT7eKJ0Dodl2dK7i/s16000/navigation-exemple.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Consultez la documentation de
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-navigation-agent/&quot; target=&quot;_blank&quot;&gt;l’agent de navigation&lt;/a&gt;
  pour plus de détails sur ses capacités, ses limites et des exemples
  d’interactions utilisateur.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Agent d&#39;exploration des données&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  L’agent d’exploration des données permet à l’utilisateur d’interroger des
  entités et des statistiques à partir des attributs et de la géométrie d’une
  couche de la webmap. Il permet également de filtrer visuellement les données
  sur la carte.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEunLNmk7WXll2yMfgAj-rf34vP1Ktd6dlEQ6C8F1yS498B91YaCbxLS_8rmfo8ZN8tNlzFqCv2Tjt3SnU6ffDKaLptGOZrZ4tGaDYT1s7wp7vd0Hb_DW_dp3F6yGicDxSqFUne6ThoNtBG34kXNCeXjoU6xSEUx_ZzIzmvwPVi8dQZiS6ecx7cReJu7lT/s1456/data-exploration-demo.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;842&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEunLNmk7WXll2yMfgAj-rf34vP1Ktd6dlEQ6C8F1yS498B91YaCbxLS_8rmfo8ZN8tNlzFqCv2Tjt3SnU6ffDKaLptGOZrZ4tGaDYT1s7wp7vd0Hb_DW_dp3F6yGicDxSqFUne6ThoNtBG34kXNCeXjoU6xSEUx_ZzIzmvwPVi8dQZiS6ecx7cReJu7lT/s16000/data-exploration-demo.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Consultez la documentation de
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-data-exploration-agent/&quot; target=&quot;_blank&quot;&gt;l’agent d’exploration&lt;/a&gt;
  des données pour plus de détails sur ses capacités, ses limites et des
  exemples d’interactions utilisateur.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Agent d&#39;aide&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div data-end=&quot;1536&quot; data-start=&quot;1339&quot;&gt;
    L’agent d’aide fournit des indications sur les capacités de l’assistant, les
    agents qui y sont associés, et peut répondre à des questions générales sur
    les données présentes dans la webmap. Les utilisateurs peuvent interroger
    cet agent sur la carte et sur les fonctionnalités de l’assistant.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEist-C_InXtMdgtTWblsQ2S_KzYhYSREKTR_8G-2IG3gIFDSwsz3y-PsWoiC5Tyf5TJxvQ8GbWMz8NCwNp78BzZUNjJ5O576RSoxTixbnCjxr5_3V1FYDLEKdiN7SMIHbh-R6b9tFHKN23wPEtWGD2uiWJbHlyMtJfJzCjzHmXDueeuDZeeiTwAQaDX5691/s1456/aide-demo.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;842&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEist-C_InXtMdgtTWblsQ2S_KzYhYSREKTR_8G-2IG3gIFDSwsz3y-PsWoiC5Tyf5TJxvQ8GbWMz8NCwNp78BzZUNjJ5O576RSoxTixbnCjxr5_3V1FYDLEKdiN7SMIHbh-R6b9tFHKN23wPEtWGD2uiWJbHlyMtJfJzCjzHmXDueeuDZeeiTwAQaDX5691/s16000/aide-demo.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Consultez la documentation de
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-help-agent/&quot; target=&quot;_blank&quot;&gt;l’agent d’assistance&lt;/a&gt;
    pour plus de détails sur ses capacités, ses limites et des exemples
    d’interactions utilisateur.
  &lt;/div&gt;
  &amp;nbsp;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Agents personnalisés&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En complément des agents fournis par le SDK JavaScript Maps, les développeurs
  peuvent créer des&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant-agent/&quot; target=&quot;_blank&quot;&gt;
    agents personnalisés&lt;/a&gt;
  afin d’étendre les capacités du composant &amp;lt;arcgis-assistant&amp;gt;.&amp;nbsp;Un
  agent personnalisé peut&amp;nbsp; par exemple proposer des analyses de données
  spécifiques,&amp;nbsp;s’intégrer à des services externes,&amp;nbsp;ou répondre à des
  besoins métiers propres à une application.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Par exemple, dans la vidéo ci-dessous, un agent personnalisé calcule un temps
  de trajet à partir d’une instruction en langage naturel.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiozGsY8RH0Rb4dVjos8JG09cb-pHXGIG2tjorfKcw-xRFdGdGOOQdtNTNbDTvYlg9djGlvziz-rH-LIgoJaU_BcYlJoqAKpd7K2IlVRi6qSs_y7TE-OuWcce1kKFZPeJgsvKfuNW1-KCuEIYZnW_aVh0y70oBT3saoCtu3ETiAdTEXGG5uA4LEMihau32r/s1110/drivetime-optimize.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;746&quot; data-original-width=&quot;1110&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiozGsY8RH0Rb4dVjos8JG09cb-pHXGIG2tjorfKcw-xRFdGdGOOQdtNTNbDTvYlg9djGlvziz-rH-LIgoJaU_BcYlJoqAKpd7K2IlVRi6qSs_y7TE-OuWcce1kKFZPeJgsvKfuNW1-KCuEIYZnW_aVh0y70oBT3saoCtu3ETiAdTEXGG5uA4LEMihau32r/s16000/drivetime-optimize.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
Si votre assistant doit effectuer plusieurs actions de natures différentes, une
bonne pratique pour maximiser les performances de vos agents est de créer des
agents très spécialisés dans une tâches puis de tous les implémenter dans
l&#39;assistant, plutôt que de créer un seul agent devant s&#39;occuper de tout. Pour en
savoir plus sur la création d’agents personnalisés, consultez
&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/agentic-apps/ai-custom-agents/&quot; target=&quot;_blank&quot;&gt;la documentation&lt;/a&gt;, qui inclut des liens vers le code de cet exemple et d’autres cas d’usage.
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Orchestration des agents&amp;nbsp;&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Lorsqu’un utilisateur soumet une requête en langage naturel, le composant
  &amp;lt;arcgis-assistant&amp;gt; utilise un agent d’orchestration (ou
  &lt;b&gt;orchestrateur&lt;/b&gt;) qui détermine l’intention de l’utilisateur. Cette
  intention permet de rediriger les différentes parties de la requête vers le ou
  les agent appropriés, en fonction du contenu de la requête et des capacités
  des agents. Les agents génèrent ensuite des réponses selon leurs
  fonctionnalités et les renvoient au composant Assistant, qui les affiche dans
  l’interface de chat ou exécute l’action correspondante sur la carte.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0KpxfhGlut7HcSnaVsZrtL20JFTYzO4DSjzK1MLUYHMTF4W-gn4OP-_5nwsYkhPaYM7vZxRc7Nzx8Ch8ZUiBmYipvRk-kXwKUHSfaIcZs76EL5QjLs_h51pYEyAsBrMBv5D6tqrO-jqs9SXDbs8gb8XyvEojrivkX9bFeQ4EDGNDBLPyT1GEdRaDXCjdF/s3091/Orchestrateur.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1526&quot; data-original-width=&quot;3091&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0KpxfhGlut7HcSnaVsZrtL20JFTYzO4DSjzK1MLUYHMTF4W-gn4OP-_5nwsYkhPaYM7vZxRc7Nzx8Ch8ZUiBmYipvRk-kXwKUHSfaIcZs76EL5QjLs_h51pYEyAsBrMBv5D6tqrO-jqs9SXDbs8gb8XyvEojrivkX9bFeQ4EDGNDBLPyT1GEdRaDXCjdF/w640-h316/Orchestrateur.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Dans l&#39;exemple ci-dessous, pour ma demande &quot;Quels accidents ont eu lieu dans
  un rayon de 100 mètres autour du 2 Place Marcel Sembat ?&quot;, l&#39;orchestrateur
  identifie que parmi les agents qu&#39;il a a disposition, il devra utiliser
  l&#39;agent de navigation pour géocoder et zoomer sur l&#39;adresse demandée, puis
  l&#39;agent d&#39;exploration des données pour requêter les données correspondant à la
  demande.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvKEVOmBdrUTsfNUOpNF6pgJiZYhPDukexfrDrrAwONIpcFlFwoRmQsAWrKFXwaRopuu0cV4EGPoVmtvTJFOCqnT9zVim9hy15LODSwb9dGeTJEdlwYLq6tjgSMdx_5D9zk460LRaCzFj_K6JIY1-oVgqC14dWxgL-JkTOTKMhNldDxysaHhYDqtO14trX/s3988/orchastrateur-exemple.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2475&quot; data-original-width=&quot;3988&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvKEVOmBdrUTsfNUOpNF6pgJiZYhPDukexfrDrrAwONIpcFlFwoRmQsAWrKFXwaRopuu0cV4EGPoVmtvTJFOCqnT9zVim9hy15LODSwb9dGeTJEdlwYLq6tjgSMdx_5D9zk460LRaCzFj_K6JIY1-oVgqC14dWxgL-JkTOTKMhNldDxysaHhYDqtO14trX/s16000/orchastrateur-exemple.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Intégration dans une application&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: small;&quot;&gt;Pour ma part, je vais créer une application pour interroger les données
    d&#39;accidents corporels de la circulation routière dans les Hauts-de-Seine de
    2006 à 2021, produites par le département des Hauts-de-Seine. Je les ai
    préparées dans
    &lt;a href=&quot;https://esrifrance.maps.arcgis.com/home/item.html?id=07341efe8c47428a8caeee89bf16e0d3&quot; target=&quot;_blank&quot;&gt;cette webmap&lt;/a&gt;, j&#39;ai rempli les métadonnées des couches et généré les embeddings. Vous
    pouvez enregistrer cette webmap sur votre organisation et regénérer les
    embeddings pour tester par vous-même, ou essayer avec vos propres
    données.&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeTU1X1_9INTH5UmPyveqI1GahRbUllJOoEOn67EBnW4lY2mvb4EpifeCRC1427-3sMcZFWMlD-orb1xFTuMXRRxHl1juZ79ymTqvwGDSS0AcuoOi8ytg10jSH_dz6JCSU-g-EDJ-IOjF4aItnMhAUt_kWOrFUSMUjhF9v_ijyGumvy1e2f28VnSh5VlDP/s1473/webmap.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;939&quot; data-original-width=&quot;1473&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeTU1X1_9INTH5UmPyveqI1GahRbUllJOoEOn67EBnW4lY2mvb4EpifeCRC1427-3sMcZFWMlD-orb1xFTuMXRRxHl1juZ79ymTqvwGDSS0AcuoOi8ytg10jSH_dz6JCSU-g-EDJ-IOjF4aItnMhAUt_kWOrFUSMUjhF9v_ijyGumvy1e2f28VnSh5VlDP/s16000/webmap.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;br /&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Intégration de base&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour intégrer les composants d&#39;IA, vous devez importer la version 5.0 du SDK
  JavaScript, puis ajouter la webmap et le composant &amp;lt;arcgis-assistant&amp;gt; à
  votre application. Notez qu&#39;il faut ajouter un id au composant webmap, pour
  ensuite pouvoir le référencer dans l&#39;assistant en tant que reference-element.
  Pour fonctionner, l&#39;assistant doit contenir au moins un agent, mais vous
  pouvez en rajouter autant que vous le souhaitez. Dans mon exemple, j&#39;ai ajouté
  les 3 agents préconfigurés.&amp;nbsp;
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-map id=&quot;map&quot; item-id=&quot;07341efe8c47428a8caeee89bf16e0d3&quot;&amp;gt;
  &amp;lt;/arcgis-map&amp;gt;
  &amp;lt;arcgis-assistant reference-element=&quot;#map&quot;&amp;gt;
    &amp;lt;arcgis-assistant-navigation-agent&amp;gt;&amp;lt;/arcgis-assistant-navigation-agent&amp;gt;
    &amp;lt;arcgis-assistant-data-exploration-agent&amp;gt;&amp;lt;/arcgis-assistant-data-exploration-agent&amp;gt;
    &amp;lt;arcgis-assistant-help-agent&amp;gt;&amp;lt;/arcgis-assistant-help-agent&amp;gt;
  &amp;lt;/arcgis-assistant&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  L&#39;ajout du composant&amp;nbsp;&amp;lt;arcgis-assistant&amp;gt; ajoute automatiquement une
  demande d&#39;authentification, même si votre carte est partagée en public. En
  effet, il est pour l&#39;instant utilisable uniquement par un utilisateur
  authentifié avec un compte ArcGIS Online. Si l&#39;utilisateur ne se connecte pas,
  il peut avoir accès à la carte selon son niveau de partage, mais s&#39;il pose une
  question à l&#39;assistant, celui-ci ne s&#39;activera pas.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzVlU4kpXP6O_q9gCD8Hx7QMaERXrFOEvxEtMuDPno8_YwYFxUVNY27osAyBJIDuAJQlGnNmFPBETbLviFqdXVufBRhvm_-zRTyvmgiOB8c7FXT4z_iEywzGjFmEc9vXTXUx06lcMymOgh6j_Fnsg4Q0beIK8qW_xX87k2J9J_KUsj3CKdzfxM7lKul5qy/s1303/signin.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;855&quot; data-original-width=&quot;1303&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzVlU4kpXP6O_q9gCD8Hx7QMaERXrFOEvxEtMuDPno8_YwYFxUVNY27osAyBJIDuAJQlGnNmFPBETbLviFqdXVufBRhvm_-zRTyvmgiOB8c7FXT4z_iEywzGjFmEc9vXTXUx06lcMymOgh6j_Fnsg4Q0beIK8qW_xX87k2J9J_KUsj3CKdzfxM7lKul5qy/s16000/signin.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Voici à quoi ressemble le code complet, avec
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/&quot; target=&quot;_blank&quot;&gt;les éléments d&#39;UI de Calcite&lt;/a&gt;&amp;nbsp; pour permettre une mise en page propre (notez que pour avoir
  l&#39;interface de l&#39;assistant en français, il suffit de rajouter l&#39;attribut
  lang=&quot;fr&quot; au &amp;lt;body&amp;gt;. ) :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;body class=&quot;calcite-mode-light&quot; lang=&quot;fr&quot;&amp;gt;
  &amp;lt;calcite-shell&amp;gt;
    &amp;lt;arcgis-map id=&quot;map&quot; item-id=&quot;07341efe8c47428a8caeee89bf16e0d3&quot;&amp;gt;
    &amp;lt;/arcgis-map&amp;gt;
    &amp;lt;calcite-shell-panel slot=&quot;panel-end&quot; width=&quot;l&quot; id=&quot;assistant-panel&quot;&amp;gt;
      &amp;lt;calcite-panel&amp;gt;
        &amp;lt;arcgis-assistant reference-element=&quot;#map&quot; heading=&quot;Accidents corporels de 2006 à 2021&quot;&amp;gt;
          &amp;lt;arcgis-assistant-navigation-agent&amp;gt;&amp;lt;/arcgis-assistant-navigation-agent&amp;gt;
          &amp;lt;arcgis-assistant-data-exploration-agent&amp;gt;&amp;lt;/arcgis-assistant-data-exploration-agent&amp;gt;
          &amp;lt;arcgis-assistant-help-agent&amp;gt;&amp;lt;/arcgis-assistant-help-agent&amp;gt;
        &amp;lt;/arcgis-assistant&amp;gt;
      &amp;lt;/calcite-panel&amp;gt;
    &amp;lt;/calcite-shell-panel&amp;gt;
  &amp;lt;/calcite-shell&amp;gt;
&amp;lt;/body&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En quelques lignes, on obtient une application que l&#39;utilisateur peut
  interroger en langage naturel :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJCx8NH-Gx25J5G18tklofrA-ZJhkHpn2661ZXAiIjiMT71FQAtzbzCFQhgU1Vchu0Bn55-7SvhUyJqiqWOhvIwrDf2ICTsapEuin-92UOegTYLGaV0e_EABs4PHwWPUHRYcEIeXkFsIj28c-qONJxKlfin7zDHq1l5Grwnr2BckqmfTTu1Lst70cy-2tQ/s1456/demo-1-minimalist-ui.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJCx8NH-Gx25J5G18tklofrA-ZJhkHpn2661ZXAiIjiMT71FQAtzbzCFQhgU1Vchu0Bn55-7SvhUyJqiqWOhvIwrDf2ICTsapEuin-92UOegTYLGaV0e_EABs4PHwWPUHRYcEIeXkFsIj28c-qONJxKlfin7zDHq1l5Grwnr2BckqmfTTu1Lst70cy-2tQ/s16000/demo-1-minimalist-ui.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Néanmoins, l&#39;API nous donne accès à plusieurs propriétés et méthodes
  supplémentaires, qui vont nous permettre de rendre notre application plus
  fluide et facile à utiliser.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Configurations supplémentaires de l&#39;assistant&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans un premier temps, je souhaite donner davantage d&#39;informations sur les
  capacités de l&#39;assistant à l&#39;utilisateur final. Nous pouvons modifier l&#39;entête
  (&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#heading&quot; target=&quot;_blank&quot;&gt;heading&lt;/a&gt;), et ajouter un description (&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#description&quot; target=&quot;_blank&quot;&gt;description&lt;/a&gt;) et des suggestions de prompt (&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#suggestedPrompts&quot; target=&quot;_blank&quot;&gt;suggestedPrompts&lt;/a&gt;). Vous pouvez le faire en modifiant les attributs des balises HTML :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-assistant reference-element=&quot;#map&quot; heading=&quot;Accidents corporels de 2006 à 2021&quot;&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
  Ou en modifiant les propriétés du composant côté JavaScript :&amp;nbsp;
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;const assistant = document.querySelector(&quot;arcgis-assistant&quot;);
assistant.description =
  &quot;Explorez le jeu de données des accidents corporels de la circulation routière dans les Hauts-de-Seine&quot;;
assistant.suggestedPrompts = [
  &quot;Filtre uniquement les accidents mortels&quot;,
  &quot;Quel type de route est le plus accidentogène ?&quot;,
  &quot;Combien d&#39;accidents ont eu lieu dans un rayon de 100m autour du 2 Place Marcel Sembat ?&quot;
];&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Voilà le résultat :&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjaIHYqVN1cmf13AxGR0I5FJXGnEcyIvlv15JQyoUH3sjhmqu3V7QgNnz_dpGUAe-Sr-kOoE18IykidL408lO_KXP3dUOErM2hZOK9D-ImcQ5TVBPE-OVZ1QIGYxvpPOFLj9Xnq_wp25mdGaMS4C0jvo7Qxt2V3HUsqQgEcvqlhwMTgK-vyxZDBv3yS5ue/s4234/assistant-config.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2482&quot; data-original-width=&quot;4234&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjaIHYqVN1cmf13AxGR0I5FJXGnEcyIvlv15JQyoUH3sjhmqu3V7QgNnz_dpGUAe-Sr-kOoE18IykidL408lO_KXP3dUOErM2hZOK9D-ImcQ5TVBPE-OVZ1QIGYxvpPOFLj9Xnq_wp25mdGaMS4C0jvo7Qxt2V3HUsqQgEcvqlhwMTgK-vyxZDBv3yS5ue/s16000/assistant-config.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Nous allons également permettre à l&#39;utilisateur de copier le résultat
  facilement grâce à un bouton, ajoutable à l&#39;interface en passant la propriété
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#copyEnabled&quot; target=&quot;_blank&quot;&gt;copyEnabled&lt;/a&gt;
  à true. De la même manière, nous lui donnons accès aux logs avec
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#logEnabled&quot; target=&quot;_blank&quot;&gt;logEnabled&lt;/a&gt;
  = true. Les logs sont très utiles pour évaluer la fiabilité des réponses, car
  il permettent à l&#39;utilisateur de comprendre comment l&#39;assistant a manipulé les
  données et la carte pour aboutir à la réponse proposée.&amp;nbsp;
  &lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;assistant.logEnabled = true;
assistant.copyEnabled = true;&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibON0aTDNjaSr1QKvkp1EeQP5i5G0pEi5TakEtr5HGJoKzWa_Esour5612HWTrgLrgaPHHyR8_1obohAbKx_RvvSAMLH1mwiWzEBEeUZ85zUkwWfnuwQN95jqKNrGhY44k8mQTryCWxwCb4utGj0j3DWeq0RCQDEFYIxHI6TnfZmJGCqwgG0O4pA2LTGq5/s1448/log.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1448&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibON0aTDNjaSr1QKvkp1EeQP5i5G0pEi5TakEtr5HGJoKzWa_Esour5612HWTrgLrgaPHHyR8_1obohAbKx_RvvSAMLH1mwiWzEBEeUZ85zUkwWfnuwQN95jqKNrGhY44k8mQTryCWxwCb4utGj0j3DWeq0RCQDEFYIxHI6TnfZmJGCqwgG0O4pA2LTGq5/s16000/log.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Maintenant, si l&#39;utilisateur a posé des questions qui ont filtré ses données,
  et qu&#39;il souhaite revenir à l&#39;état initial de la carte, la seule solution
  qu&#39;il a est de demander à l&#39;assistant de réinitialiser les filtres. Cependant,
  ce n&#39;est pas forcément évident pour tous les utilisateurs. Nous allons ajouter
  un bouton qui va permettre de revenir à l&#39;état initial plus facilement.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans un premier temps, j&#39;ajoute un bouton &quot;Réinitialiser la conversation&quot; dans
  le
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/components/arcgis-assistant/#slots&quot; target=&quot;_blank&quot;&gt;slot &quot;footer-content&quot;&lt;/a&gt;
  du composant assistant côté HTML.&amp;nbsp;&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;calcite-button id=&quot;btn_r0&quot; width=&quot;full&quot; appearance=&quot;outline&quot; icon-start=&quot;trash&quot;&amp;gt;
  Réinitialiser la conversation
&amp;lt;/calcite-button&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Ensuite, côté JS, au click du bouton, je me sers de deux méthodes de
  l&#39;assistant :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  en premier, submitMessage envoie automatiquement un message à l&#39;assistant pour
  lui demander de réinitialiser les filtres et l&#39;étendue de la carte
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  ensuite, clearChatHistory supprime l&#39;historique de conversation.
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;btn_r0.addEventListener(&quot;click&quot;, async () =&amp;gt; {
 await assistant.submitMessage(&quot;Réinitialise tous les filtres s&#39;il y en a et rezoome à l&#39;étendue initiale&quot;);
 await assistant.clearChatHistory();
});&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm0cBqMaZcxJGWqPT7KyFQKYDJdewGxNCZ_sjqwXYv_qaw41SY_eUYudV8LA_VVODPbvZiVAFaZQEknOeQ3nrIau2CpVweO0QRciiY8J-9xfPs3T1fcmnAwRs7263duFex7BFE0IeGLAdG9U2vXwZgIayHyxvnoi6uwMbOciXoRtMh-H3nAWb7od-ZVZcr/s1456/r%C3%A9initialiser.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1456&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm0cBqMaZcxJGWqPT7KyFQKYDJdewGxNCZ_sjqwXYv_qaw41SY_eUYudV8LA_VVODPbvZiVAFaZQEknOeQ3nrIau2CpVweO0QRciiY8J-9xfPs3T1fcmnAwRs7263duFex7BFE0IeGLAdG9U2vXwZgIayHyxvnoi6uwMbOciXoRtMh-H3nAWb7od-ZVZcr/s16000/r%C3%A9initialiser.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  Enfin, pour correspondre aux couleurs de la carte, rien de plus simple ! Je
  peux changer très rapidement les couleurs utilisés par tous les composants
  ArcGIS de l&#39;application en modifiant quelques règles CSS de Calcite :
&lt;br /&gt;&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-css&quot;&gt;.calcite-mode-light {
  --calcite-color-brand: #e89746;
  --calcite-color-focus: #e89746;
  --calcite-color-brand-hover: #c24c25;
  --calcite-color-brand-press: #5e2e1c;
}&lt;/code&gt;&lt;/pre&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHTY7xstLXlg_t2XGSmMjMaW6pLEbw0eZ1ffYRw2G_pdQRLQJslRMG1ISdu3rQDGX0hZ31ulf607EE8-PFd4Zvx3_U9Hqyf25dXPvfjjT2AmVaPKivKR4a1T3DwkMWInmcgqSrX_x2D1iE7xC8oMEu1GiNYa6fgG2bUAp1SZFZt_GdMzL0Y8jmj9eYP5-I/s1452/ui.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;848&quot; data-original-width=&quot;1452&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHTY7xstLXlg_t2XGSmMjMaW6pLEbw0eZ1ffYRw2G_pdQRLQJslRMG1ISdu3rQDGX0hZ31ulf607EE8-PFd4Zvx3_U9Hqyf25dXPvfjjT2AmVaPKivKR4a1T3DwkMWInmcgqSrX_x2D1iE7xC8oMEu1GiNYa6fgG2bUAp1SZFZt_GdMzL0Y8jmj9eYP5-I/s16000/ui.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;L&#39;application est terminée ! Vous pouvez consulter le code complet sur &lt;a href=&quot;https://codepen.io/japalenos/pen/ZYpbdZa?editors=1010&quot; target=&quot;_blank&quot;&gt;ce CodePen&lt;/a&gt;&amp;nbsp;ou consulter les autres &lt;a href=&quot;https://www.codethemap.fr/search/label/JavaScript&quot; target=&quot;_blank&quot;&gt;articles dédiés à JavaScript&lt;/a&gt; de ce blog.&lt;/div&gt;</description><link>https://www.codethemap.fr/2026/03/integrer-des-agents-ia-vos-applications.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ2UOR7JuHetsYp3QDOYiLc6-FGpuQk0qlshc4o8cpcqUbiPzWttNU-oR2g9IIRElAiOwh3VjUEK9vsHI7nqf30OYZawgG56qSjQHCPgyZB8v30KQOYE3bDwWDMTmVlPftRJgiPZZ9sIVQJf5Xz3e2NuGUyBX1K2vAMxpzY8qSC2Bo4W5Q6av7kFosH66e/s72-c/minia-ai-sdkjsv2-redim.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-5107367595367843594</guid><pubDate>Mon, 02 Mar 2026 12:51:00 +0000</pubDate><atom:updated>2026-03-02T13:51:02.663+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><title>La version 5.0 du SDK JavaScript d&#39;ArcGIS est disponible !</title><description>  &lt;p&gt;
    &lt;style&gt;
      a{color: rgb(106,14,120)}
    &lt;/style&gt;
    &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUb3w0CrtR2rwenWxWSEmZiNG9iOvE1ZbE93IECO7s6wPewtftK6p3P88B37L2lQSodi0imYBir1qLjyt81lE0P80nTLbBgnderlL9AGZANN2ZqHnCbhcsqku2bGYLgezaWEObfRSpXERvc42lec78dj59aRYWExJxnKOdgKAoHjW0eTHQKYCbPMN9eC2J/s16000/minia-JS50-min.jpg&quot; style=&quot;display: none;&quot; /&gt;
  &lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  L&#39;ArcGIS Maps SDK for JavaScript est désormais disponible en version 5.0 !
  Entre l’arrivée d’un puissant assistant IA et la refonte complète du site de
  documentation, cette version marque une étape structurante. Dans cet article,
  je vous propose de découvrir les points forts de la 5.0 et ce qu’elle apporte
  concrètement à vos développements.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUb3w0CrtR2rwenWxWSEmZiNG9iOvE1ZbE93IECO7s6wPewtftK6p3P88B37L2lQSodi0imYBir1qLjyt81lE0P80nTLbBgnderlL9AGZANN2ZqHnCbhcsqku2bGYLgezaWEObfRSpXERvc42lec78dj59aRYWExJxnKOdgKAoHjW0eTHQKYCbPMN9eC2J/s2871/minia-JS50-min.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1613&quot; data-original-width=&quot;2871&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUb3w0CrtR2rwenWxWSEmZiNG9iOvE1ZbE93IECO7s6wPewtftK6p3P88B37L2lQSodi0imYBir1qLjyt81lE0P80nTLbBgnderlL9AGZANN2ZqHnCbhcsqku2bGYLgezaWEObfRSpXERvc42lec78dj59aRYWExJxnKOdgKAoHjW0eTHQKYCbPMN9eC2J/s16000/minia-JS50-min.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Note : le SDK adopte désormais le versionnage sémantique. Il devient ainsi
  plus simple de comprendre les évolutions, d’anticiper l’impact d’un changement
  de version et de planifier vos mises à jour en toute confiance.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Composants IA (beta) pour des applications web de cartographie
    agentique&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez maintenant créer des applications web de cartographie agentique
  intégrant une interface en langage naturel grâce au nouveau package
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/ai-components/&quot; target=&quot;_blank&quot;&gt;AI components (beta)&lt;/a&gt;. Les utilisateurs peuvent explorer et analyser l’information géographique
  via des requêtes conversationnelles, pour une expérience plus simple et plus
  accessible.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqVkoQHttIphWlWoy1iECdbvS_hTbIgJeU2VWhAG6kCvTuZV2icK3VDT7hhcnh-WqyGImA3pTr_rDQj2cf7YsFXIIPoNq-Ur6oH7HveJhvRIAzN3MT5wQ1sVTZSSJRy82RoS9ITq4OZdX6VWWvWLk76e7HqUDWxG55KRQVRECxjhGlid-z5TqbmLWzpYCR/s1110/ai-assistant.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;746&quot; data-original-width=&quot;1110&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqVkoQHttIphWlWoy1iECdbvS_hTbIgJeU2VWhAG6kCvTuZV2icK3VDT7hhcnh-WqyGImA3pTr_rDQj2cf7YsFXIIPoNq-Ur6oH7HveJhvRIAzN3MT5wQ1sVTZSSJRy82RoS9ITq4OZdX6VWWvWLk76e7HqUDWxG55KRQVRECxjhGlid-z5TqbmLWzpYCR/s16000/ai-assistant.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Ce package comprend le composant Assistant et différents agents :&lt;br /&gt;
  &lt;ul&gt;
    &lt;li&gt;
      &lt;b&gt;Le composant Assistant :&lt;/b&gt; &amp;lt;arcgis-assistant&amp;gt; fournit une
      interface de chat permettant aux utilisateurs finaux d’interagir avec une
      web map en langage naturel, via un ou plusieurs agents.
    &lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;Les agents :&lt;/b&gt; ils traitent les requêtes des utilisateurs et génèrent
      des réponses adaptées en fonction de leur rôle. Voici les agents
      disponibles :
    &lt;/li&gt;
    &lt;ul&gt;
      &lt;li&gt;
        Agent de navigation : permet de naviguer vers une zone spécifique de la
        carte et de répondre aux questions de type « Où ». Exemples : « Aller au
        Golden Gate Bridge », « Zoomer ».
      &lt;/li&gt;
      &lt;li&gt;
        Agent d&#39;exploration des données : permet d’interroger et de filtrer des
        entités, de calculer des statistiques et des proximités spatiales, pour
        répondre aux questions de type « Quoi ». Par exemple : « Quelle est la
        ville la plus peuplée ? » ou « Combien de villes se trouvent à moins de
        30 miles du Colorado River ? ». Les réponses s’appuient sur les couches
        présentes dans la carte.
      &lt;/li&gt;
      &lt;li&gt;
        Agent d&#39;aide : fournit une aide contextuelle et des indications d’usage,
        comme « Quel type de questions puis-je poser ? » ou « Quelles couches
        sont présentes dans cette carte ? ».
      &lt;/li&gt;
      &lt;li&gt;
        Agents personnalisés : les développeurs peuvent créer leurs propres
        agents pour le composant Assistant afin de gérer des besoins
        spécifiques, des workflows particuliers ou des jeux de données dédiés.
      &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour utiliser l’assistant IA et ses agents, quelques lignes de code suffisent
  :
  &lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-assistant reference-element=&quot;#wheat-map&quot;&amp;gt;
    &amp;lt;arcgis-assistant-navigation-agent&amp;gt;&amp;lt;/arcgis-assistant-navigation-agent&amp;gt;
    &amp;lt;arcgis-assistant-data-exploration-agent&amp;gt;&amp;lt;/arcgis-assistant-data-exploration-agent&amp;gt;
    &amp;lt;arcgis-assistant-help-agent&amp;gt;&amp;lt;/arcgis-assistant-help-agent&amp;gt;
&amp;lt;/arcgis-assistant&amp;gt;
&amp;lt;arcgis-map id=&quot;wheat-map&quot; item-id=&quot;dd6e8957e7a94765bf32bc07097cbf46&quot;&amp;gt;&amp;lt;/arcgis-map&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
  Pour en savoir plus sur la création d’applications de cartographie agentique
  avec les AI components,
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/agentic-apps/ai-introduction/&quot; target=&quot;_blank&quot;&gt;consultez la page de guide dédiée&lt;/a&gt;, testez les composants et
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/agentic-apps/ai-faq/#how-can-i-provide-feedback-or-request-features-for-ai-components&quot; target=&quot;_blank&quot;&gt;partagez vos retours&lt;/a&gt;
  pendant la période de beta.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Dessiner et éditer des courbes vraies&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Il est désormais possible de créer des géométries comportant des segments
  courbes comme les courbes de Bézier, les arcs circulaires et les arcs par
  points d’extrémité, grâce à de nouveaux outils de dessin de courbes intégrés
  dans les composants Sketch et Editor. Les segments droits existants peuvent
  être transformés en arcs circulaires en déplaçant le point médian tout en
  maintenant la touche Shift enfoncée.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Dessin segment par segment :&lt;/b&gt;
  vous pouvez passer de manière fluide entre les différents outils de dessin
  (ligne droite, tracé libre et nouvelles options de courbes) tout en créant des
  segments de polylignes ou de polygones.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLDunaggnT8k64UxB-V_ruUMlNU6PLyKck_6hragvG4Vj2xoywAiUtIdnXAZcTJkiTDes0-Q_Xcxekx5c_hQzkHPgatZ5djmXJoM1V0QI-i9Oq_C7W4eeG-mZoILeAfxITJkwLFDNrb8D8r0Dj8YDqbMoojxS7JLCV8a0crpEHvxClYMmXLEAogn5u6UYj/s1908/sketch-curves.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;996&quot; data-original-width=&quot;1908&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLDunaggnT8k64UxB-V_ruUMlNU6PLyKck_6hragvG4Vj2xoywAiUtIdnXAZcTJkiTDes0-Q_Xcxekx5c_hQzkHPgatZ5djmXJoM1V0QI-i9Oq_C7W4eeG-mZoILeAfxITJkwLFDNrb8D8r0Dj8YDqbMoojxS7JLCV8a0crpEHvxClYMmXLEAogn5u6UYj/s16000/sketch-curves.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;b&gt;Créer, éditer et accrocher aux entités avec courbes dans Editor :&lt;/b&gt; le
  composant Editor prend désormais en charge l’ajout et la modification
  d’entités avec des courbes vraies. Il permet également l’accrochage à
  n’importe quel point le long d’un segment courbe, ce qui facilite et sécurise
  l’édition de courbes au sein de vos couches d’entités.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEK7vAXwW3cxxrAQ4UwArdqeGG3Gs4kR222vxucNktrU7gGqAjLePmM1I4zqPx6vACppQV88yky3Ja4Ziq8eVbM466yJYsXkhwCHaMEkhW77n0fgk69o2k2Q1wuOZfJQjty0jx2pTHim91uDbz-5V2OfdNZ946Ia9ZeaX0r5R5PwA09n4sB3J2gtxEC3jd/s1650/editor-parcel-curve.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;908&quot; data-original-width=&quot;1650&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEK7vAXwW3cxxrAQ4UwArdqeGG3Gs4kR222vxucNktrU7gGqAjLePmM1I4zqPx6vACppQV88yky3Ja4Ziq8eVbM466yJYsXkhwCHaMEkhW77n0fgk69o2k2Q1wuOZfJQjty0jx2pTHim91uDbz-5V2OfdNZ946Ia9ZeaX0r5R5PwA09n4sB3J2gtxEC3jd/s16000/editor-parcel-curve.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Note : le support des courbes et le changement d’outil sont disponibles
  uniquement en 2D.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Illuminer les scènes 3D avec des symboles lumineux et un effet de
      halo&lt;/span&gt;
  &lt;/h3&gt;
  &lt;b&gt;Les matériaux émissifs&lt;/b&gt; permettent aux symboles d’émettre de la lumière,
  offrant des scènes nocturnes réalistes tout en améliorant la lisibilité et en
  mettant visuellement en valeur certaines entités. Tout symbole volumétrique
  peut devenir un élément lumineux, idéal pour mettre en avant des entités
  sélectionnées de manière thématique. Pour un rendu nocturne réaliste,
  appliquez les informations émissives directement dans les modèles 3D, comme
  des enseignes ou des fenêtres illuminées, afin de créer une atmosphère
  naturelle.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;L’effet de halo&lt;/b&gt; accentue tous les émetteurs en
  leur donnant un aspect lumineux doux et apporte un rendu plus stylisé à
  l’ensemble de la scène.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZFNETRTPTrAQLBC01Zrpva_Hw8L7HRT-eFXWX-hcR1vGLRwGEbdSXaF8dl37o5MGi38SwA72Skk0nh4XAwybrte8oRc0GutSh1Njoey-3ZjYdfqesIUH0_SQaz-jwbqTOJI_OgJGqJx5O1a8QfyCPtw3opcUPpUQDvOMOAsminaVwVHaoWVRb-6GMbyxt/s1280/light-emitting-symbols-and-glow-720.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;720&quot; data-original-width=&quot;1280&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZFNETRTPTrAQLBC01Zrpva_Hw8L7HRT-eFXWX-hcR1vGLRwGEbdSXaF8dl37o5MGi38SwA72Skk0nh4XAwybrte8oRc0GutSh1Njoey-3ZjYdfqesIUH0_SQaz-jwbqTOJI_OgJGqJx5O1a8QfyCPtw3opcUPpUQDvOMOAsminaVwVHaoWVRb-6GMbyxt/s16000/light-emitting-symbols-and-glow-720.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Couche de Gaussian splat&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans cette version, Esri introduit la couche de Gaussian Splat, un nouveau
  type de couche 3D offrant une visualisation photoréaliste des environnements
  bâtis et naturels complexes dans une scène 3D. Elle permet un rendu très
  détaillé pour les structures fines et complexes, comme par exemple les lignes
  électriques, les garde-corps, les antennes ou la végétation dense, tout en
  offrant une transparence fluide pour des matériaux comme le verre ou d’autres
  surfaces semi-translucides. Cette nouveauté permet de réaliser des workflows
  avancés, comme l’inspection, l’analyse de la végétation ou des présentations
  haute fidélité.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSegKcGAWub6cAfM7Mx2T49IFlGCR5XWKiEaYu-hjq1IF8iOdWj6jeAqll6zq9bktVduoCH-cY9of9ttpSjmXIPUtwokboAUZOhF0tdNG_Bjf0zNy4ojllDs8QthEsv_Mysqf3RaefJDS6jQOESJ4rX1ucFTnedzGtUCGFbuAP0PgkibW0U7ZMZ0ObFAlq/s1430/Gaussiant-js50.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;733&quot; data-original-width=&quot;1430&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSegKcGAWub6cAfM7Mx2T49IFlGCR5XWKiEaYu-hjq1IF8iOdWj6jeAqll6zq9bktVduoCH-cY9of9ttpSjmXIPUtwokboAUZOhF0tdNG_Bjf0zNy4ojllDs8QthEsv_Mysqf3RaefJDS6jQOESJ4rX1ucFTnedzGtUCGFbuAP0PgkibW0U7ZMZ0ObFAlq/s16000/Gaussiant-js50.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les couche de Gaussian Splat sont particulièrement adaptées aux zones
  nécessitant un haut niveau de détail, avec des visuels réalistes. Associée à
  la couche photomaillage intégrée, elle fournit des données précises, éditables
  et mesurables. Ensemble, ces types de couches 3D permettent aux développeurs
  de créer des expériences 3D interactives et immersives directement sur le web.
  &lt;br /&gt;
&lt;/div&gt;
&lt;div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations des tables attributaires&lt;/span&gt;
    &lt;/h3&gt;
    &lt;b&gt;Règles attributaires : &lt;/b&gt;le composant Feature Table prend désormais en
    compte les règles attributaires lors de l’édition des attributs,
    garantissant l’intégrité des données et la validité des mises à jour
    d’attributs dans la table.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Mise en attente des modifications lors de l’édition :&lt;/b&gt;
    les développeurs peuvent désactiver l’enregistrement automatique pendant
    l’édition afin de vérifier les mises à jour avant de sauvegarder les
    changements. L’enregistrement automatique reste activé par défaut.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Expérience améliorée pour la visualisation des pièces jointes :&amp;nbsp;&lt;/b&gt;lors de l’affichage des pièces jointes dans la table, il est désormais
    possible de consulter des informations supplémentaires sur les fichiers,
    telles que le nom, le type de pièce jointe, la taille et les
    mots-clés.&amp;nbsp;
  &lt;/div&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgma_ip24PKJtZHkmrRmp00YYensEGU3vo-uEFd_DQQZhQVwM9e7QNOvwkeEcQfOpuYmS5iL7cAFcRhA4hDe-W7GKwxH9Mb_mtBDsFSfNkOFeNmE3OJjZcqdNVJcPI92IIyt0pqRpc_MpGjjT-bt__WDonrbRMvMatdl1MldnEAyf0kovY8D9AxB4Nx6fZ1/s1958/feature-table-cav.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1070&quot; data-original-width=&quot;1958&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgma_ip24PKJtZHkmrRmp00YYensEGU3vo-uEFd_DQQZhQVwM9e7QNOvwkeEcQfOpuYmS5iL7cAFcRhA4hDe-W7GKwxH9Mb_mtBDsFSfNkOFeNmE3OJjZcqdNVJcPI92IIyt0pqRpc_MpGjjT-bt__WDonrbRMvMatdl1MldnEAyf0kovY8D9AxB4Nx6fZ1/s16000/feature-table-cav.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Créer des applications avec des composants&lt;/span&gt;
    &lt;/h3&gt;
    Cette version marque officiellement une évolution majeure : le passage des
    widgets aux components !&amp;nbsp;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Les components sont désormais la manière recommandée de construire des
    applications, offrant productivité maximale et intégration fluide avec les
    frameworks modernes. Bien que tous
    &lt;b&gt;les widgets soient dépréciés dans la version 5.0&lt;/b&gt;, vos applications
    existantes basées sur des widgets continueront de fonctionner normalement.
    Les widgets ne recevront plus de nouvelles fonctionnalités et leur
    suppression est prévue pour le premier trimestre 2027 (version 6.0). Pour
    plus d&#39;informations sur la transition des widgets vers les composants, vous
    pouvez consulter
    &lt;a href=&quot;https://www.codethemap.fr/2025/10/sdk-javascript-darcgis-transition-vers.html&quot; target=&quot;_blank&quot;&gt;cet article&lt;/a&gt;.
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;br /&gt;&lt;b&gt;Nouveaux composants :&lt;/b&gt; cette version introduit de nombreux
    nouveaux composants, à commencer par le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-utility-network-trace-analysis/&quot; target=&quot;_blank&quot;&gt;Utility Network Trace Analysis component&lt;/a&gt;, pour une expérience de trace optimisée et simplifiée, et le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-volume-measurement/&quot; target=&quot;_blank&quot;&gt;Volume Measurement component (beta)&lt;/a&gt;
    pour la mesure des volumes.&amp;nbsp;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgONkKLVjjDk0sX9tsAcdTVVeQjqKBVVBZDWsdxILRdMiJqeEPFu_vH9McnNiQt5bbf0G5qVMzkr8ATUAEuHBU2pKCt8_RnzObfF1SjU7apeHqpX6wpEgOJVUdit0JZwefa82k_UGS21OOmUkKIwLrvubgpcwIMX3DxIMD6qB4Z8upFGbA6Xr4ASsJ8eJdW/s2560/UN-trace-analysis-component-scaled.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1207&quot; data-original-width=&quot;2560&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgONkKLVjjDk0sX9tsAcdTVVeQjqKBVVBZDWsdxILRdMiJqeEPFu_vH9McnNiQt5bbf0G5qVMzkr8ATUAEuHBU2pKCt8_RnzObfF1SjU7apeHqpX6wpEgOJVUdit0JZwefa82k_UGS21OOmUkKIwLrvubgpcwIMX3DxIMD6qB4Z8upFGbA6Xr4ASsJ8eJdW/s16000/UN-trace-analysis-component-scaled.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;b&gt;Nouvelles options de style :&lt;/b&gt; la propriété visualScale a été ajoutée à
    certains components pour faciliter l’ajustement de leur taille. Une nouvelle
    variable CSS, --arcgis-view-color-focus, permet de mettre à jour la couleur
    du contour de focus dans les vues Map et Scene.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Composants pour l’analyse :&lt;/b&gt;
    les composants Elevation Profile, Shadow Cast et Volume Measurement (beta)
    utilisent désormais les objets d’analyse correspondants, améliorant la
    stabilité et la cohérence. Ces objets d’analyse sont également disponibles
    dans l’API core, en remplacement des
    &lt;a href=&quot;https://www.codethemap.fr/2025/10/sdk-javascript-arcgis-viewmodels.html&quot; target=&quot;_blank&quot;&gt;view models&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Package de components communs :&lt;/b&gt; le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/common-components/&quot; target=&quot;_blank&quot;&gt;nouveau package common components&lt;/a&gt;
    contient un ensemble de composants d&#39;UI : Slider, Histogram et Ticks. Ils
    sont idéaux pour la visualisation quantitative, avec ou sans carte.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioNX2chvTDd8seM6oONPEEGEprP2Er5rxjJim0YWt85fyHSxycImfxKL3CGqdouXRKn_1dNAeWe7Bnr5Yzx9X8X10bwGPjhobBhfIyrdFDK6I0wyJhzn9K4hRdQDalzfLV9pAIfvDMmGfKb7boWSBMeJGTk9Nr6jcNE8sRjUoAZ2Sd_Oux_8PsiyRQp7Ed/s2504/common-components.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;832&quot; data-original-width=&quot;2504&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioNX2chvTDd8seM6oONPEEGEprP2Er5rxjJim0YWt85fyHSxycImfxKL3CGqdouXRKn_1dNAeWe7Bnr5Yzx9X8X10bwGPjhobBhfIyrdFDK6I0wyJhzn9K4hRdQDalzfLV9pAIfvDMmGfKb7boWSBMeJGTk9Nr6jcNE8sRjUoAZ2Sd_Oux_8PsiyRQp7Ed/s16000/common-components.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;b&gt;Composants de diagrammes :&lt;/b&gt; il est désormais possible de créer des heat
  charts dans Map Viewer et de les charger dans des applications web
  personnalisées depuis la couche, étendant ainsi l’option programmatique via le
  charts model introduit en
  &lt;a href=&quot;https://www.codethemap.fr/2025/10/quelles-sont-les-nouveautes-de-la.html&quot; target=&quot;_blank&quot;&gt;4.34&lt;/a&gt;. Le rendu par classes (class break rendering) est également supporté dans
  les heat charts pour visualiser les données par plages distinctes.&amp;nbsp;&lt;br /&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;b&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
        &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigdqLTUOaacZx6Hh5fNTdJdnKEQApT37bYiw1I0q1d89e5moC6-Hizv8zpsvohztIggc4K9lBqRIpmuOzJJoXOtrBpRq41QpslHDv4xJE-5kEtQjq82Nq-NDj8uICEJRWnrQuOpaD9va6gyw3uZIXX2gXu3WY28uIH60YEJsKZgz6bbGBr80ZymJeIXolD/s2560/heatchart-mv-short-scaled.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1298&quot; data-original-width=&quot;2560&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigdqLTUOaacZx6Hh5fNTdJdnKEQApT37bYiw1I0q1d89e5moC6-Hizv8zpsvohztIggc4K9lBqRIpmuOzJJoXOtrBpRq41QpslHDv4xJE-5kEtQjq82Nq-NDj8uICEJRWnrQuOpaD9va6gyw3uZIXX2gXu3WY28uIH60YEJsKZgz6bbGBr80ZymJeIXolD/s16000/heatchart-mv-short-scaled.png&quot; /&gt;&lt;/a&gt;
        &lt;h3 style=&quot;text-align: justify;&quot;&gt;
          &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations des étiquettes&lt;/span&gt;
        &lt;/h3&gt;
        &lt;div style=&quot;text-align: justify;&quot;&gt;
          &lt;b&gt;Meilleure gestion de l’occlusion pour les étiquettes et icônes en
            3D :&lt;/b&gt;
        &lt;/div&gt;
        &amp;nbsp;
      &lt;/div&gt;&lt;/b&gt;
    les étiquettes et icônes restent désormais lisibles dans les scènes 3D même
    lorsqu’elles sont partiellement ou totalement occultées, offrant un meilleur
    contexte, orientation et perception spatiale. Une nouvelle propriété,
    occludedVisibility, permet de contrôler la visibilité avec trois modes :
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;ul&gt;
      &lt;li&gt;
        Adaptive (par défaut) : les étiquettes et icônes situées derrière
        d’autres objets sont affichées en fonction de leur distance par rapport
        à l’objet. Ce mode est utilisé dans les 3D Basemaps.
      &lt;/li&gt;
      &lt;li&gt;
        Visible : les étiquettes et icônes derrière d’autres objets sont
        toujours affichées.
      &lt;/li&gt;
      &lt;li&gt;
        Hidden : les étiquettes et icônes derrière d’autres objets ne sont pas
        affichées, reproduisant le comportement des versions précédentes du
        SDK.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfQVS3-l6olZ4FO75hMGAVHbfESGkOE1FTGq3IC04l8RTnY4-fdPQ22tsyUu2J6rsubBqucOJgkEhrLqy3p2NB_bB-4DM5WU47kJ1uTDO1ZNroKN5V02-nE5tEC0e5_suhf4FQ94IpYAd4-SKwIH-q7HIDT7QUwQooAF7tV1tH5SnKVcWPUa6HtGOGk5iQ/s960/occlusion-handling.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;540&quot; data-original-width=&quot;960&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfQVS3-l6olZ4FO75hMGAVHbfESGkOE1FTGq3IC04l8RTnY4-fdPQ22tsyUu2J6rsubBqucOJgkEhrLqy3p2NB_bB-4DM5WU47kJ1uTDO1ZNroKN5V02-nE5tEC0e5_suhf4FQ94IpYAd4-SKwIH-q7HIDT7QUwQooAF7tV1tH5SnKVcWPUa6HtGOGk5iQ/s16000/occlusion-handling.gif&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
      &lt;/li&gt;
    &lt;/ul&gt;
    &lt;b&gt;Repositionnement automatique des étiquettes pour les polygones en 2D : &lt;/b&gt;les étiquettes à l’intérieur des polygones sont automatiquement
    repositionnées lorsque le centroïde du polygone se trouve en dehors de la
    zone visible de la carte 2D, afin de rester visibles et de fournir un
    meilleur contexte lors de la navigation sur la carte.&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPyuSbOoAUvx4Ct1J8APUuswHfyiYH_12SrwF5J4cGPIxPOfG94jdh0aT7WH6KBJ5bpnFwfY9YyMPm7-lIDX4LR2R80z72FBV8QkZBinb2zEiiYdeR4kdamYAyZfUSm7zjdKmSYsaYHuwklfEjBGUngGe_pH5P-90I9c5JGnhrpU896HVhl0WJP15CpEV3/s1898/label-autorepostioning.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;866&quot; data-original-width=&quot;1898&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPyuSbOoAUvx4Ct1J8APUuswHfyiYH_12SrwF5J4cGPIxPOfG94jdh0aT7WH6KBJ5bpnFwfY9YyMPm7-lIDX4LR2R80z72FBV8QkZBinb2zEiiYdeR4kdamYAyZfUSm7zjdKmSYsaYHuwklfEjBGUngGe_pH5P-90I9c5JGnhrpU896HVhl0WJP15CpEV3/s16000/label-autorepostioning.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Déplacement par glisser-déposer des points de passage dans le composant
        Directions&lt;/span&gt;
    &lt;/h3&gt;
    Le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-directions/&quot; target=&quot;_blank&quot;&gt;composant Directions&lt;/a&gt;
    permet désormais aux utilisateurs d’affiner leurs itinéraires en manipulant
    les points de passage via une expérience de type glisser-déposer. Les points
    de passage sont des emplacements que l’itinéraire doit traverser sans qu’un
    arrêt soit nécessaire. Le bouton Edit route permet d’ajouter, de déplacer ou
    de supprimer ces points de passage.
    &lt;div style=&quot;text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9hyphenhyphenLCU3068c1vCDsg_x-iw0n_TEHK3DwvfRurItBdp3AxO0QBXULY01nc76zhPu6NUhuXpA6kXzqfL8fKniyFuqynCCbtNNAps49PNp-mQw9b1xO241Ihm96yJrQ2D6P7w7B8VZGiZohtW_qgnBJAVFpzQ3zCdeoQ2fYeiYmMmEW9XTFIrm71ku7KHdmo/s990/dragdrop_waypoint-1.webp&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;532&quot; data-original-width=&quot;990&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9hyphenhyphenLCU3068c1vCDsg_x-iw0n_TEHK3DwvfRurItBdp3AxO0QBXULY01nc76zhPu6NUhuXpA6kXzqfL8fKniyFuqynCCbtNNAps49PNp-mQw9b1xO241Ihm96yJrQ2D6P7w7B8VZGiZohtW_qgnBJAVFpzQ3zCdeoQ2fYeiYmMmEW9XTFIrm71ku7KHdmo/s16000/dragdrop_waypoint-1.webp&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations pour l&#39;imagerie orientée&lt;/span&gt;
    &lt;/h3&gt;
    L’interface du
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-oriented-imagery-viewer/&quot; target=&quot;_blank&quot;&gt;composant Oriented Imagery Viewer&lt;/a&gt;
    a été repensée pour offrir une expérience utilisateur plus fluide et
    intuitive.&amp;nbsp;Un nouvel outil de recherche permet d’accéder facilement aux
    images, tandis que la mise en cache des images a été optimisée pour de
    meilleures performances. Le filtrage par informations temporelles permet
    quant à lui de requêter les images avec précision selon des contraintes
    temporelles.
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgrD8NzCq7caMzrjb2vLc1G3d4wxunOoSURfmFzsGXwfwGwGVpnxgS9hyphenhyphenQu8GdS62m0oiwC7CI1jDwC6H55snux567FCA18VrqU4SjJguNoNh5ZGsaV4jC0LAQTYDzoV6u8eUlUkXdSbdt498JWGp4f4FUrVauWpOzrg6_w41iIIJosiDH2pcJMX5fpD_-/s1396/OrientedImagery_ReleaseBlog_5.0.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;836&quot; data-original-width=&quot;1396&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgrD8NzCq7caMzrjb2vLc1G3d4wxunOoSURfmFzsGXwfwGwGVpnxgS9hyphenhyphenQu8GdS62m0oiwC7CI1jDwC6H55snux567FCA18VrqU4SjJguNoNh5ZGsaV4jC0LAQTYDzoV6u8eUlUkXdSbdt498JWGp4f4FUrVauWpOzrg6_w41iIIJosiDH2pcJMX5fpD_-/s16000/OrientedImagery_ReleaseBlog_5.0.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Synchronisation des sélections avec le Gestionnaire de sélection&lt;/span&gt;
    &lt;/h3&gt;
    La nouvelle classe Selection Manager (beta) donne aux développeurs un accès
    aux entités sélectionnées dans les couches et les tables, aussi bien dans
    une carte 2D que dans une scène 3D.&amp;nbsp;Le Selection Manager peut être
    configuré pour surveiller les modifications sur les couches sélectionnables
    et mettre automatiquement à jour les sélections en conséquence, offrant un
    moyen centralisé de gérer l’état des sélections au sein d’une vue.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQSDXNLfEB-BvLr1xuChhVHCmM9UrmdSucnZcZs_chv05yyY2FTzA5NL7_1VINmfG7TwMpBPB8SH5spxL7h1FXsGguZvD3z2WdoDOIss-0Ktf21IHegGuAriINN-Q7CYnrpFQrLHJ0fMxSvH81qpTnHAaIl0dyYRh_Zty72sbpfnb9zbeq2CQCDywJ7OLM/s1868/sync-selection-editor-table.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1868&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQSDXNLfEB-BvLr1xuChhVHCmM9UrmdSucnZcZs_chv05yyY2FTzA5NL7_1VINmfG7TwMpBPB8SH5spxL7h1FXsGguZvD3z2WdoDOIss-0Ktf21IHegGuAriINN-Q7CYnrpFQrLHJ0fMxSvH81qpTnHAaIl0dyYRh_Zty72sbpfnb9zbeq2CQCDywJ7OLM/s16000/sync-selection-editor-table.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Utilisation des fonds de carte basée sur des sessions&lt;/span&gt;
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Les développeurs utilisant ArcGIS Location Platform peuvent désormais
    exploiter la nouvelle API basemap session (dont nous avions parlé dans
    &lt;a href=&quot;https://www.codethemap.fr/2025/08/nouveautes-services-localisation.html&quot; target=&quot;_blank&quot;&gt;les nouveautés de cet été&lt;/a&gt;) pour consommer des fonds de carte par sessions. Une session correspond à
    une période pendant laquelle un utilisateur unique d’une application peut
    accéder à un nombre illimité de tuiles de fond de carte depuis le service de
    basemap.bCette approche permet aux développeurs d’anticiper le coût lié à
    l’utilisation des fonds de carte. Découvrez le fonctionnement de ce modèle
    d’utilisation à travers
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/tutorials/display-a-map-with-a-basemap-session/&quot; target=&quot;_blank&quot;&gt;ce tutoriel&lt;/a&gt;.&amp;nbsp;
  &lt;/div&gt;
  &lt;h3 style=&quot;text-align: justify;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations de la documentation et de la programmation&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;b&gt;Nouvelle expérience de recherche et de consultation des exemples :&lt;/b&gt; la
    liste des exemples bénéficie d’une mise en page et d’une expérience de
    recherche améliorées. De nouvelles mises en page ont également été ajoutés
    aux exemples afin que la description complète, le code et la fenêtre de
    prévisualisation soient disponibles simultanément, facilitant l’édition du
    code en direct tout en lisant la description. La majorité des exemples ont
    été mis à jour pour utiliser des composants, reflétant ainsi les usages
    recommandés et les bonnes pratiques.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil2cMSZdec_5-nt6roRATaMHzzvaUWHn1MKOLvv-k84dQXizzhu1E9r8ihzWNtkOojM-4hdnDodSsKKbHsxbpgxs06SOP96Tyk268YXkDAeFefdwmlLW653HtAgdfi83mScahG1RhJ6iSLpi3Q5jHiaB1QePTpUynTO0X36YIgt0n17V3Sz66cfh-5Latg/s1093/new-sample-page.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;364&quot; data-original-width=&quot;1093&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil2cMSZdec_5-nt6roRATaMHzzvaUWHn1MKOLvv-k84dQXizzhu1E9r8ihzWNtkOojM-4hdnDodSsKKbHsxbpgxs06SOP96Tyk268YXkDAeFefdwmlLW653HtAgdfi83mScahG1RhJ6iSLpi3Q5jHiaB1QePTpUynTO0X36YIgt0n17V3Sz66cfh-5Latg/s16000/new-sample-page.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;b&gt;Layouts pour les applications de cartographie :&lt;/b&gt; un nouveau guide
    présente les patterns recommandés pour structurer les applications web de
    cartographie avec le Calcite Design System et l&#39;ArcGIS Maps SDK for
    JavaScript. Trois exemples centrés sur les layouts sont désormais
    disponibles dans
    &lt;a href=&quot;https://github.com/Esri/jsapi-resources/tree/main/layouts/&quot; target=&quot;_blank&quot;&gt;les ressources du repo Github du SDK&lt;/a&gt;, offrant des points de départ simples pour construire votre interface
    utilisateur. Ces layouts couvrent des workflows courants : recherche
    d’éléments (finder), tableaux de bord (dashboards) et filtres
    interactifs.&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9w_gq3YU5tCWs-dW-N7qOedMdreVgSqWS8vvLUfFSoJSk9ZmhSElUxXUK_B1kn1l0Tj9OQfqo-IVvd13FycIkvGApGhtORxeaW_JHydV_CW6gWLsikJzW8f7_8ibgB7n4jB84Wc-ZUWFxRRcC26i3SfGPhQHwtSsh-7zdpP0ucG48v3SUxbKyoAlULctt/s2380/layout-samples-small.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;920&quot; data-original-width=&quot;2380&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9w_gq3YU5tCWs-dW-N7qOedMdreVgSqWS8vvLUfFSoJSk9ZmhSElUxXUK_B1kn1l0Tj9OQfqo-IVvd13FycIkvGApGhtORxeaW_JHydV_CW6gWLsikJzW8f7_8ibgB7n4jB84Wc-ZUWFxRRcC26i3SfGPhQHwtSsh-7zdpP0ucG48v3SUxbKyoAlULctt/s16000/layout-samples-small.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;b&gt;Démarrage avec @arcgis/create :&lt;/b&gt; le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/get-started/&quot; target=&quot;_blank&quot;&gt;guide de démarrage&lt;/a&gt;
    a été mis à jour pour expliquer comment créer une application avec npm en
    utilisant l’outil CLI @arcgis/create et les templates de démarrage. Une
    application prête à l’emploi peut désormais être créée avec une seule
    commande :
    &lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;npx @arcgis/create -n my-arcgis-app -t vite&lt;/code&gt;&lt;/pre&gt;
    &lt;b&gt;Tag unique pour les utilisateurs CDN :&lt;/b&gt; dans les applications basées
    sur CDN, un seul tag &amp;lt;script&amp;gt; permet d’accéder à l’API core, aux
    composants de carte, aux composants IA, aux composants communs, aux
    composants graphiques, aux composants de code et aux composants de Calcite,
    sans augmenter significativement la taille. Notez que le type=&quot;module&quot; est
    indispensable.
    &lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;!-- Charger l’ArcGIS Maps
  SDK for JavaScript depuis le CDN --&amp;gt;&lt;br /&gt;&amp;lt;script type=&quot;module&quot;
  src=&quot;https://js.arcgis.com/5.0/&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
    Cette approche remplace la structure multi-lignes précédente, simplifiant le
    chargement du SDK et la création de petites applications. L’ancien
    comportement reste accessible via :
    &lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;script type=&quot;module&quot;
  src=&quot;https://js.arcgis.com/5.0/core.js&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
    &lt;b&gt;Modifications pour TypeScript et codemod :&lt;/b&gt; pour les développeurs
    TypeScript, il est recommandé d’utiliser les imports ESM individuels afin
    d’importer directement les types depuis leurs fichiers de module respectifs.
    L’ancien namespace __esri n’est plus supporté. Un codemod est fourni pour
    mettre automatiquement à jour les imports vers la syntaxe ESM recommandée,
    facilitant la migration.&lt;b&gt;&amp;nbsp;&lt;/b&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;b&gt;Archivage des documentation des versions précédentes :&lt;/b&gt; à partir de la
    version 4.34, la documentation des versions précédentes du SDK est
    disponible sur le site web, permettant d’accéder directement à ce dont vous
    avez besoin sans télécharger le SDK localement.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Migration depuis Google Maps :&lt;/b&gt;
    de nouvelles
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/migrate-from-google-maps-to-arcgis-javascript-sdk/&quot; target=&quot;_blank&quot;&gt;pages de guides&lt;/a&gt;
    dédiées aux développeurs utilisant Google Maps JavaScript API à migrer vers
    l&#39;ArcGIS Maps SDK for JavaScript, incluant l’installation, des tutoriels
    pour les workflows courants, ainsi qu’une matrice concepts/terminologie pour
    faciliter la transition technique.
  &lt;/div&gt;
  &lt;h3 style=&quot;text-align: justify;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Pour en savoir plus&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    La version 5.0 offre encore plus que les nouveautés présentées ci-dessus.
    Profitez par exemple de transitions plus fluides pour le rendu des flux,
    d’un rendu amélioré des sols transparents, et bien d’autres améliorations !
    Vous pouvez consulter la liste complète des mises à jour dans les
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/v5-0/&quot; target=&quot;_blank&quot;&gt;notes de version&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Le mercredi 15 avril, l&#39;équipe de développement du SDK
    proposera un live sur
    &lt;a href=&quot;https://www.youtube.com/@EsriDevs/featured&quot; target=&quot;_blank&quot;&gt;leur chaîne YouTube&lt;/a&gt;. Cette session est l’occasion d’explorer les dernières nouveautés et de
    poser vos questions directement à l’équipe produit.&lt;br /&gt;&lt;br /&gt;Enfin, comme
    chaque année, le
    &lt;a href=&quot;https://www.codethemap.fr/2026/01/devtech-summit.html&quot;&gt;Developer &amp;amp; Technology Summit&lt;/a&gt;
    revient en mars ! La version digitale vous donne accès à un certain nombre
    de présentations, alors n&#39;hésitez pas à y jeter un œil.&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;

&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/03/version-5-0-sdk-javascript-arcgis.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUb3w0CrtR2rwenWxWSEmZiNG9iOvE1ZbE93IECO7s6wPewtftK6p3P88B37L2lQSodi0imYBir1qLjyt81lE0P80nTLbBgnderlL9AGZANN2ZqHnCbhcsqku2bGYLgezaWEObfRSpXERvc42lec78dj59aRYWExJxnKOdgKAoHjW0eTHQKYCbPMN9eC2J/s72-c/minia-JS50-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-4636420367858874327</guid><pubDate>Thu, 12 Feb 2026 10:33:00 +0000</pubDate><atom:updated>2026-02-12T11:33:58.714+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Calcite</category><category domain="http://www.blogger.com/atom/ns#">Design System</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><title>Découvrez la version 5.0 du Calcite Design System</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOpjLXeBWiNmDq_anF5asCr-xtTfqpPeXRTmrrhM6fRaCO3eq364iwwh-ZpbhNmc0gFIvftYIyZWOXcovY2PDWyBfmqL_VScwW4jMqtp7i0edtniiZjJsY1mZ90Xi8qDACshGnA9bUZoWtHVE6At3RiHzkvR5L2feURnT7WBtzxQ2U6MuMuprm18bLZGb/s826/minia-calcite-50.png&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/&quot; target=&quot;_blank&quot;&gt;Calcite Design System&lt;/a&gt;
  vous permet d&#39;enrichir vos applications avec des éléments d&#39;UI prêts à
  l&#39;emploi, cohérents et personnalisables. Pour s&#39;adapter aux usages modernes,
  Esri ne cesse de le faire évoluer, avec 3 mises à jour par an. Dans cet
  article, je vous propose de découvrir ensemble la première mise à jour de
  l&#39;année, avec la version 5.0 de février 2026.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOpjLXeBWiNmDq_anF5asCr-xtTfqpPeXRTmrrhM6fRaCO3eq364iwwh-ZpbhNmc0gFIvftYIyZWOXcovY2PDWyBfmqL_VScwW4jMqtp7i0edtniiZjJsY1mZ90Xi8qDACshGnA9bUZoWtHVE6At3RiHzkvR5L2feURnT7WBtzxQ2U6MuMuprm18bLZGb/s826/minia-calcite-50.png&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;465&quot; data-original-width=&quot;826&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOpjLXeBWiNmDq_anF5asCr-xtTfqpPeXRTmrrhM6fRaCO3eq364iwwh-ZpbhNmc0gFIvftYIyZWOXcovY2PDWyBfmqL_VScwW4jMqtp7i0edtniiZjJsY1mZ90Xi8qDACshGnA9bUZoWtHVE6At3RiHzkvR5L2feURnT7WBtzxQ2U6MuMuprm18bLZGb/s16000/minia-calcite-50.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Convention de nommage du CDN&lt;/span&gt;&amp;nbsp;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Calcite et l&#39;&lt;a href=&quot;https://developers.arcgis.com/javascript/&quot;&gt;ArcGIS Maps SDK for JavaScript&lt;/a&gt;
  adoptent désormais une gestion coordonnée des versions et du nommage du CDN
  (ce qui explique notamment le saut de version de la 3.3 à la 5.0). Dans cette
  logique, le point d&#39;entrée CDN a été mis a jour :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;script src=&quot;https://js.arcgis.com/calcite-components/5.0&quot; type=&quot;module&quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/h4&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Ressources hébergées localement&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Si vous préférez un hébergement local des assets, vous pouvez copier les
  fichiers nécessaires dans le répertoire de votre projet avec la commande
  suivante :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;cp -r node_modules/@esri/calcite-components/dist/cdn/assets/* ./your-asset-directory/
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Consultez
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/get-started/&quot; target=&quot;_blank&quot;&gt;la documentation&lt;/a&gt;
  pour plus de détails sur l&#39;utilisation du CDN et le chargement des assets
  selon votre configuration.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Redesign du composant Action&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action/&quot; target=&quot;_blank&quot;&gt;Action&lt;/a&gt;
  a été repensé à l&#39;échelle de tout le design system. Sa taille est désormais
  plus compacte, il propose une apparence transparente par défaut. Les slots où
  vous pouvez insérer des actions présentent un meilleur alignement sans
  variation de taille et un espacement par défaut amélioré lors de l&#39;intégration
  dans des composants parents comme par exemple la
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action-bar/&quot; target=&quot;_blank&quot;&gt;barre d&#39;action&lt;/a&gt;.Une nouvelle apparence de mise en évidence (highlight) est également
  disponible.
  &lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;tbody&gt;
      &lt;tr&gt;
        &lt;td style=&quot;text-align: center;&quot;&gt;
          &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinoVaiaOa9rRcFex-M-v9Ngz-SkUE2hiDkQAD6UQaju-adpn4a7UVda0fc35jtwyfoes1C5ScLOMxTygB26OiO4asnAadWB3Fi8pI6umJdoapKUS37JF-jPm5XCTGm1Q1ljCYYtLHRJezkF4UOPHewD1pqT1n3TOKMD0M975rerPjVX6dEPWkcclYayV1D/s1078/initiatives-action-redesign-1.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;352&quot; data-original-width=&quot;1078&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinoVaiaOa9rRcFex-M-v9Ngz-SkUE2hiDkQAD6UQaju-adpn4a7UVda0fc35jtwyfoes1C5ScLOMxTygB26OiO4asnAadWB3Fi8pI6umJdoapKUS37JF-jPm5XCTGm1Q1ljCYYtLHRJezkF4UOPHewD1pqT1n3TOKMD0M975rerPjVX6dEPWkcclYayV1D/s16000/initiatives-action-redesign-1.png&quot; /&gt;&lt;/a&gt;
        &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
        &lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;
          En haut, l&#39;apparence par défaut. En bas, la nouvelle apparence de mise
          en évidence.
        &lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;
  &lt;/table&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Désactivation du mode plein écran du composant Dialog&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/dialog/&quot; target=&quot;_blank&quot;&gt;Dialog&lt;/a&gt;
  intègre désormais une propriété fullscreenDisabled. Cette propriété empêche
  l’affichage en plein écran du composant (un comportement qui, sur les écrans
  de petite largeur, occupait tout le viewport et masquait entièrement le reste
  du contenu). Elle offre ainsi un contrôle de configuration supplémentaire sur
  la manière dont le composant et le contenu en arrière-plan sont présentés
  selon la résolution d’écran, en particulier sur mobile et tablette.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUFJX6bXlhGX3CuNzyEitmGkfxVqzugC21MpFRTCJsLYhNPz6Vrp4-iz_38425B20gK7GPF9H-9GdOqgIJ6vcOH30L52hitnGMjEnFEGr993x3uFQDU0_8IHSgWYm2-z82MocUn_9_aVOVNA8TyzEw-uRvodasDGWRYEoo__roegcIJ4G-BNVEkbFznQEa/s1422/dialog.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;780&quot; data-original-width=&quot;1422&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUFJX6bXlhGX3CuNzyEitmGkfxVqzugC21MpFRTCJsLYhNPz6Vrp4-iz_38425B20gK7GPF9H-9GdOqgIJ6vcOH30L52hitnGMjEnFEGr993x3uFQDU0_8IHSgWYm2-z82MocUn_9_aVOVNA8TyzEw-uRvodasDGWRYEoo__roegcIJ4G-BNVEkbFznQEa/s16000/dialog.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Cohérence UI/UX des composants groupés&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les composants groupés comme
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/dropdown-group/&quot; target=&quot;_blank&quot;&gt;Dropdown Group&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/combobox-item-group/&quot; target=&quot;_blank&quot;&gt;Combobox Item Group&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/list-item-group/&quot; target=&quot;_blank&quot;&gt;List Item Group&lt;/a&gt;
  partagent désormais une expérience UI/UX harmonisées sur les variations de
  graisse des polices, les couleurs et les états interactifs. Cela permet de
  renforcer la cohérence visuelle et l&#39;expérience utilisateur.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNE4FSJyk2I5U_uSWikxagGMBV8YICOdBv9Yi4l-E2KEMjj6QLL1wqZSIvYgqA_GEcSqW5Vrpogw6emTNsbFLt2X2TqwmtOUSF0ZDWwR06oAC3CNVYElb1V9MkgZLRwYnaYDUM9LcAdrrYXhXFGVbxwBhOZE9nltcUFTTHGDSRth3RQaTVQA59ksQ0f70X/s1860/initiatives-grouping.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1068&quot; data-original-width=&quot;1860&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNE4FSJyk2I5U_uSWikxagGMBV8YICOdBv9Yi4l-E2KEMjj6QLL1wqZSIvYgqA_GEcSqW5Vrpogw6emTNsbFLt2X2TqwmtOUSF0ZDWwR06oAC3CNVYElb1V9MkgZLRwYnaYDUM9LcAdrrYXhXFGVbxwBhOZE9nltcUFTTHGDSRth3RQaTVQA59ksQ0f70X/s16000/initiatives-grouping.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Amélioration de l&#39;affichage des préfixes et de suffixes&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Les composants
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input/&quot; target=&quot;_blank&quot;&gt;Input&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-number/&quot; target=&quot;_blank&quot;&gt;Input Number&lt;/a&gt;
    et
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-text/&quot; target=&quot;_blank&quot;&gt;Input Text&lt;/a&gt;
    ont amélioré le rendu visuel de leurs propriétés prefixText et suffixText.
    Cela permet de réduire le risque de les confondre avec des éléments
    cliquables et de diminuer le bruit visuel et d&#39;offrir des indications plus
    claires aux utilisateurs.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTpOKBIGQ_EbIEOUiBIRHiweblfDlcQba2G5MwfdxvBPbrddlH7LYGAeDftvQY6PQ_3ZSq2woNCbdY3X4ib4GldQDjyuH0m-X2kgZuRJtvpp5ZrpTSTq2C0S14JrNVpVj4guqDq8bteyyzq6tZjtdNiJSvzFNFuM-Bg9OzIfQXS38Qyxx4bdV5-ZRuWQOA/s1286/5.0-inputs-prefix-suffix.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;792&quot; data-original-width=&quot;1286&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTpOKBIGQ_EbIEOUiBIRHiweblfDlcQba2G5MwfdxvBPbrddlH7LYGAeDftvQY6PQ_3ZSq2woNCbdY3X4ib4GldQDjyuH0m-X2kgZuRJtvpp5ZrpTSTq2C0S14JrNVpVj4guqDq8bteyyzq6tZjtdNiJSvzFNFuM-Bg9OzIfQXS38Qyxx4bdV5-ZRuWQOA/s16000/5.0-inputs-prefix-suffix.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Meilleure pagination dans le composant Table&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: small;&quot;&gt;Le composant
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/table/&quot; target=&quot;_blank&quot;&gt;Table&lt;/a&gt;
    introduit une nouvelle propriété currentPage, permettant de lire ou définir
    la page courante lorsque la pagination est activée. Cette propriété offre au
    développeur un meilleur contrôle du comportement de pagination au
    développeur en lui permettant de définir la page initiale au moment du
    rendu, récupérer la page actuellement affichée et changer de page de manière
    programmatique.&lt;/span&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Amélioration de l&#39;accessibilité&amp;nbsp;&lt;/span&gt;
&lt;/h3&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Mode de sélection dans Action Group&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action-group/&quot; target=&quot;_blank&quot;&gt;Action Group&lt;/a&gt;
    prend désormais en charge des modes de sélection pour les
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action/&quot; target=&quot;_blank&quot;&gt;Actions&lt;/a&gt;
    insérées via slot, offrant la possibilité de sélectionner plusieurs Actions
    regroupées. Ces modes de sélection améliorent l’usage au clavier et
    fournissent un contexte renforcé aux technologies d’assistance, permettant
    de toucher un public plus large dans vos solutions. Les Actions insérées
    dans Action Bar avec gap et padding sont désormais représentées de manière
    cohérente dans tout le composant.&amp;nbsp;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2XNHY9ogb99LBbvLRFLQuTVf2Izb9G_ei-E0NOL4bE_3lc8jpoiXHNQBofUfshGj1g8bbK2jipQnMI5W1WJKwyfkeg7wF7-tSVdZqv2Jz2wGRgeLNXuMb2tAep8i3RvEEeQqqoxr3ArysPP7MoSvwevJ8RvTWrtMk-hTsRwl0JjMB1owkcNvJl8cKFV9E/s995/initiatives-action-redesign-2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;177&quot; data-original-width=&quot;995&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2XNHY9ogb99LBbvLRFLQuTVf2Izb9G_ei-E0NOL4bE_3lc8jpoiXHNQBofUfshGj1g8bbK2jipQnMI5W1WJKwyfkeg7wF7-tSVdZqv2Jz2wGRgeLNXuMb2tAep8i3RvEEeQqqoxr3ArysPP7MoSvwevJ8RvTWrtMk-hTsRwl0JjMB1owkcNvJl8cKFV9E/s16000/initiatives-action-redesign-2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;h4&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Propriété aria pour Action&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
  &lt;/h4&gt;
&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action/&quot; target=&quot;_blank&quot;&gt;Action&lt;/a&gt;
      propose une nouvelle propriété aria, qui permet de surcharger ou d’étendre
      les attributs
      &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA&quot; target=&quot;_blank&quot;&gt;ARIA&lt;/a&gt;
      appliqués au bouton du composant. Par exemple, cette propriété peut
      fournir davantage de contexte aux technologies d’assistance lorsqu’une
      Action bascule la visibilité d’un autre composant. Reportez-vous à la
      section
      &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action/#accessibility&quot; target=&quot;_blank&quot;&gt;accessibilité du composant Action&lt;/a&gt;
      pour les recommandations de configuration.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;h4&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Support en lecture seule pour Combobox&lt;/span&gt;&lt;br /&gt;
  &lt;/h4&gt;
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/combobox/&quot; target=&quot;_blank&quot;&gt;Combobox&lt;/a&gt;
      améliore l’accessibilité lorsqu’il n’est pas éditable mais que son contenu
      reste accessible aux utilisateurs. Dans la version 5.0, le composant
      communique désormais sa valeur aux technologies d’assistance lorsqu’il est
      en mode lecture seule.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Breaking Changes&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;h4 style=&quot;text-align: justify;&quot;&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Renommage des tokens de couleur&lt;/span&gt;
  &lt;/h4&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Les
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/tokens/usage/#semantic-tokens&quot; target=&quot;_blank&quot;&gt;tokens sémantiques&lt;/a&gt;
    évoluent avec l&#39;introduction de
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/tokens/reference/#colors&quot; target=&quot;_blank&quot;&gt;tokens de couleur basés sur des noms de surface&lt;/a&gt;, disponibles en mode clair et sombre. Les anciens tokens background et
    foreground sont désormais dépréciés.
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
  &lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Retrait des API dépréciées&lt;/span&gt;
  &lt;/h4&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Avec la version 5.0, Calcite a supprimé les composants, propriétés,
      valeurs, slots et événements dépréciés. Par exemple, le slot tooltip
      d’&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action/&quot; target=&quot;_blank&quot;&gt;Action&lt;/a&gt; peut désormais être remplacé par l’utilisation directe du
      composant &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/tooltip/&quot; target=&quot;_blank&quot;&gt;Tooltip&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Les composants supprimés en 5.0 incluent :
      Modal, Shell Center Row, Tile Select, Tile Select Group, Tip, Tip Group et
      Tip Manager.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Pour consulter la liste complète des éléments
      supprimés, rendez-vous dans le résumé des &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#removed-components&quot; target=&quot;_blank&quot;&gt;composants&lt;/a&gt;, &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#removed-properties-values-slots-and-events&quot; target=&quot;_blank&quot;&gt;propriétés&lt;/a&gt;, &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#values&quot; target=&quot;_blank&quot;&gt;valeurs&lt;/a&gt;,
      &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#events&quot; target=&quot;_blank&quot;&gt;slots&lt;/a&gt; et &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#events&quot; target=&quot;_blank&quot;&gt;événements&lt;/a&gt; retirés, qui détaille les étapes de migration
      nécessaires pour la version 5.0.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Mises à jour du design de Notice&lt;/span&gt;&lt;/h4&gt;
&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/notice/&quot; target=&quot;_blank&quot;&gt;Notice&lt;/a&gt; propose désormais une apparence minimaliste, offrant une meilleure distinction visuelle par rapport au composant &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/alert/&quot; target=&quot;_blank&quot;&gt;Alert&lt;/a&gt;. Dans la
      version 5.0, Notice prend en charge plusieurs styles de messages en ligne, dont une apparence avec un contour et un remplissage pour mettre en évidence certains
      messages et une apparence transparente pour des messages moins
      intrusifs.&amp;nbsp;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYxJ6UyIOJT5tLQ9q3KiXpTWcAM_HgE4YPVogAyvUaqffH1nh-4ApBSHfG8YhC-4IF0Q4OZBjEW4f3lVUOiOX9p9SjUXgchiCosUKALcfbCPUjHa_o7NuSd7Jv91KWKBEeb0pCR55YFFQTMSFjl8J7wHnHVAlE4j7QmYyjQWoQk4eDYxMzVSo7wXQ6yM9K/s4390/notice.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1259&quot; data-original-width=&quot;4390&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYxJ6UyIOJT5tLQ9q3KiXpTWcAM_HgE4YPVogAyvUaqffH1nh-4ApBSHfG8YhC-4IF0Q4OZBjEW4f3lVUOiOX9p9SjUXgchiCosUKALcfbCPUjHa_o7NuSd7Jv91KWKBEeb0pCR55YFFQTMSFjl8J7wHnHVAlE4j7QmYyjQWoQk4eDYxMzVSo7wXQ6yM9K/s16000/notice.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Mise à jour de la cartographie des couleurs en mode sombre&lt;/span&gt;&lt;br /&gt;&lt;/h3&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
La cartographie des couleurs en mode sombre a été révisée pour
      s’aligner sur le mode clair, en s’assurant que les couleurs de fond
      restent plus sombres que les couleurs de premier plan. Cela permet une
      meilleure cohérence visuelle et un contraste approprié.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGMINY8YlFGQEQr9SSjrvMVnsZ_FRjythZtmfLGI_hhTWR68-vm4QK_llrHULXGkHXYcRZgunJjZ6s_CbGRnFeDsY27a1Y4yKPsfrZ9ZyErGCifdbCsLCBf89iyy4KMNWrZGEIlN64G7N9sbluZtrijagOpbaoiZGZhx9qyhYeHkmZTxzxJP4p5LQuDjtn/s1466/5.0-calcite-dark-mode-mapping.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;801&quot; data-original-width=&quot;1466&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGMINY8YlFGQEQr9SSjrvMVnsZ_FRjythZtmfLGI_hhTWR68-vm4QK_llrHULXGkHXYcRZgunJjZ6s_CbGRnFeDsY27a1Y4yKPsfrZ9ZyErGCifdbCsLCBf89iyy4KMNWrZGEIlN64G7N9sbluZtrijagOpbaoiZGZhx9qyhYeHkmZTxzxJP4p5LQuDjtn/s16000/5.0-calcite-dark-mode-mapping.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
  &lt;h4 style=&quot;text-align: justify;&quot;&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;Intégration au framework&lt;/span&gt;&lt;br /&gt;&lt;/h4&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
Avec le support des custom elements dans React 19+, le package
      @esri/calcite-components-react n’est plus nécessaire et est déprécié en
      5.0, avec suppression prévue dans une prochaine version majeure. Il est
      recommandé de passer à React 19+ et d’utiliser directement
      @esri/calcite-components pour garantir la compatibilité et le support futur.
&lt;/div&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Pour aller plus loin&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Consultez les
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/changelogs/latest/&quot; target=&quot;_blank&quot;&gt;notes de version de février 2026&lt;/a&gt;
  pour découvrir la &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2026-02/#changes-since-october-2025&quot; target=&quot;_blank&quot;&gt;liste complète des changements depuis la version 3.3&lt;/a&gt; :
  nouvelles fonctionnalités, corrections de bugs et dépréciations.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le 24 février à 18h, l&#39;équipe de développement de Calcite organiseront
  &lt;a href=&quot;https://www.youtube.com/watch?v=b0ru4oRR3qE&quot; target=&quot;_blank&quot;&gt;un live&lt;/a&gt;
  pour présenter ces nouveautés. N&#39;hésitez pas à y assister pour pouvoir leur
  poser vos questions en direct.&amp;nbsp;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/02/decouvrez-la-version-50-du-calcite.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFOpjLXeBWiNmDq_anF5asCr-xtTfqpPeXRTmrrhM6fRaCO3eq364iwwh-ZpbhNmc0gFIvftYIyZWOXcovY2PDWyBfmqL_VScwW4jMqtp7i0edtniiZjJsY1mZ90Xi8qDACshGnA9bUZoWtHVE6At3RiHzkvR5L2feURnT7WBtzxQ2U6MuMuprm18bLZGb/s72-c/minia-calcite-50.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-5845398895578189546</guid><pubDate>Mon, 26 Jan 2026 13:51:00 +0000</pubDate><atom:updated>2026-01-26T15:07:23.749+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ArcGIS Developer</category><category domain="http://www.blogger.com/atom/ns#">événement</category><title>Découvrez les dernières nouveautés et les prochaines évolutions d&#39;ArcGIS au Developer &amp; Technology Summit !</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://esrifrance.maps.arcgis.com/sharing/rest/content/items/b47717d7245d481da683bba125bd09b0/data&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4F905SToQfdPysChb60I-oOweugBCDvtGPxztjE-zCim2c0Og4NV1h2CbYjji5zG4O-fS4xtYIrdEFc38d-AWkCSFieVAtHIRBtyL_qx6Gks_iWtyO-hetqRCFVapqqxBLyBtzNGHXjDr4qo8O82Glfn0patvyI09L26SGvLOnihNrOH3_D-XpdEwqfSV/s1200/devtech2026-resized.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;674&quot; data-original-width=&quot;1200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4F905SToQfdPysChb60I-oOweugBCDvtGPxztjE-zCim2c0Og4NV1h2CbYjji5zG4O-fS4xtYIrdEFc38d-AWkCSFieVAtHIRBtyL_qx6Gks_iWtyO-hetqRCFVapqqxBLyBtzNGHXjDr4qo8O82Glfn0patvyI09L26SGvLOnihNrOH3_D-XpdEwqfSV/s16000/devtech2026-resized.jpg&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans un peu plus d&#39;un mois se tiendra l&#39;édition 2026 de l&#39;événement annuel
  d&#39;Esri à destination des développeurs, des architectes ou encore des data
  scientist travaillant avec ArcGIS ou intéressés par le géospatial.
  &lt;b&gt;Le
    &lt;a href=&quot;https://www.esri.com/en-us/about/events/devtech/overview&quot; target=&quot;_blank&quot;&gt;Developer &amp;amp; Technology Summit&lt;/a&gt;
    aura lieu du 10 au 13 mars 2026 à Palm Springs,&lt;/b&gt;
  aux Etats-Unis 🌴 Un accès digital est également possible si vous ne pouvez
  pas vous rendre là-bas, et
  &lt;a href=&quot;https://www.esri.com/en-us/about/events/devtech/registration&quot; target=&quot;_blank&quot;&gt;toutes les inscriptions ont lieu ici&lt;/a&gt;. Et si vous êtes détenteurs d&#39;un ArcGIS Developer Bundle, l&#39;inscription est
  incluse dans votre abonnement !&amp;nbsp; Cet événement est l&#39;occasion de rester à
  jour sur les technologies développeurs en évolution rapide, apprendre de
  nouvelles techniques pour développer des applications géographiques de pointe,
  rencontrer des développeurs du monde entier, et découvrir les
  nouveautés qui nous attendent pour l&#39;année 2026.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Au programme : la plénière, étalée sur 3 matinées, de nombreux ateliers
  techniques, présentations utilisateurs, workshops, mais aussi la partie
  &quot;exposition&quot; permettant d&#39;échanger directement avec les équipes d&#39;Esri
  derrière les APIs, les SDKs et toutes les solutions du système ArcGIS. Vous
  pouvez consulter
  &lt;a href=&quot;https://registration.esri.com/flow/esri/26epcdev/deveventportal/page/detailed-agenda&quot; target=&quot;_blank&quot;&gt;l&#39;agenda détaillé de la conférence&lt;/a&gt;
  pour plus de renseignements sur ce qui vous attend pendant ces quatre jours.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcN7Mi32FC2tjvWk36MJC6mApZLG386tNLgrkQY4O-PxTxPUWGANR39UTZV_Fa8J0MsXpJJmzcv6mx0Dsc-pKmnJYSK6EpapEuDKDEfGrx6rBrveeBtiSdGvnZ4S1YaTZJ3AfanPCxjgmAOXy7D1KqnSqBxTf8P1B5IoSFOzcODSa7PSIIohIZpTtNc-GX/s2560/dev-tech26-banner-lg.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;700&quot; data-original-width=&quot;2560&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcN7Mi32FC2tjvWk36MJC6mApZLG386tNLgrkQY4O-PxTxPUWGANR39UTZV_Fa8J0MsXpJJmzcv6mx0Dsc-pKmnJYSK6EpapEuDKDEfGrx6rBrveeBtiSdGvnZ4S1YaTZJ3AfanPCxjgmAOXy7D1KqnSqBxTf8P1B5IoSFOzcODSa7PSIIohIZpTtNc-GX/s16000/dev-tech26-banner-lg.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/01/devtech-summit.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4F905SToQfdPysChb60I-oOweugBCDvtGPxztjE-zCim2c0Og4NV1h2CbYjji5zG4O-fS4xtYIrdEFc38d-AWkCSFieVAtHIRBtyL_qx6Gks_iWtyO-hetqRCFVapqqxBLyBtzNGHXjDr4qo8O82Glfn0patvyI09L26SGvLOnihNrOH3_D-XpdEwqfSV/s72-c/devtech2026-resized.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-9123722570833441189</guid><pubDate>Wed, 21 Jan 2026 14:01:00 +0000</pubDate><atom:updated>2026-01-21T15:29:25.269+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Python</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Installer et utiliser l’API Python d&#39;ArcGIS dans son propre environnement</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://esrifrance.maps.arcgis.com/sharing/rest/content/items/96e1a75873894a5b9d482ec289cde225/data&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  Comme promis, on se retrouve en ce début d&#39;année pour le premier tutoriel sur
  l&#39;API Python d&#39;ArcGIS ! Mais avant de savoir &lt;i&gt;quoi&lt;/i&gt; coder, on va se poser
  la question de &lt;i&gt;où&lt;/i&gt; coder.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans les tutoriels, j&#39;utilise souvent ArcGIS Notebooks. Disponible par défaut
  dans ArcGIS Online et ArcGIS Pro et via un rôle serveur additionnel dans
  ArcGIS Enterprise, cet environnement d&#39;exécution offre plusieurs avantages :
  une intégration transparente à votre SIG web, la mise à disposition d&#39;extraits
  de codes ou
  &lt;a href=&quot;https://www.codethemap.fr/2025/12/modeles-ArcGIS-Notebooks.html&quot; target=&quot;_blank&quot;&gt;de scripts complets préconçus par Esri&lt;/a&gt;, mais aussi un environnement Python prêt à l&#39;emploi, qui inclut les
  bibliothèques ArcGIS (ArcPy et l&#39;API Python) ainsi que de nombreuses
  dépendances Python déjà installées, couramment utilisées pour la manipulation
  de données, l&#39;analyse et l&#39;automatisation.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette solution est donc très intéressante, car elle permet de se concentrer
  directement sur le développement plutôt que sur la configuration de
  l&#39;environnement et assure des workflows très fluides pour travailler avec
  ArcGIS.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6X8asqDYmVvmk5U-L-iwrSi5z6QAwcpFsWb6q-Ew6EM4DUHzbiJujz6-r2Ge1h0-s7TngT6G28IRgL7bVVPUPhu8Yo2Lt20bo0u1bGUWvfSlVOotudhXMidJxHOV6KM_GRp0-aSfTsq91JWZQeM72BGMiE1B6MQNyqoAAzzC3IejdGXg5uo_Jw9SE-wH8/s2833/tuto-py-26-1-texte.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1589&quot; data-original-width=&quot;2833&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6X8asqDYmVvmk5U-L-iwrSi5z6QAwcpFsWb6q-Ew6EM4DUHzbiJujz6-r2Ge1h0-s7TngT6G28IRgL7bVVPUPhu8Yo2Lt20bo0u1bGUWvfSlVOotudhXMidJxHOV6KM_GRp0-aSfTsq91JWZQeM72BGMiE1B6MQNyqoAAzzC3IejdGXg5uo_Jw9SE-wH8/s16000/tuto-py-26-1-texte.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Mais dans certains cas, vous pourriez préférer conserver vos habitudes de
  développement (par exemple en utilisant votre IDE préféré) ou avoir à enrichir
  votre environnement avec des bibliothèques spécifiques. L&#39;API Python d&#39;ArcGIS
  étant distribuée via
  &lt;a href=&quot;https://pypi.org/project/arcgis/&quot; target=&quot;_blank&quot;&gt;Pypi&lt;/a&gt; et
  &lt;a href=&quot;https://anaconda.org/channels/Esri/packages/arcgis/files&quot; target=&quot;_blank&quot;&gt;Conda&lt;/a&gt;, il est totalement possible de l&#39;installer et de l&#39;utiliser dans
  l&#39;environnement de votre choix, et nous allons voir comment dans cet article.
  Selon le cas de figure dans lequel vous vous trouvez, plusieurs options sont
  disponibles. Voici les différents points que cet article traitera :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;Gestionnaire d&#39;environnement ;&lt;/li&gt;
    &lt;li&gt;Installer l&#39;API Python dans un environnement vierge ;&lt;/li&gt;
    &lt;li&gt;Étendre l&#39;environnement par défaut d&#39;ArcGIS Pro ;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Gestionnaire d&#39;environnement&lt;/span&gt;&lt;/h3&gt;
  &lt;div&gt;
    Pour simplifier la manipuler les environnements, il vous faut un
    gestionnaire d&#39;environnement. Esri préconise
    &lt;a href=&quot;https://www.anaconda.com/download/success&quot; target=&quot;_blank&quot;&gt;une distribution Anaconda complète ou Miniconda&lt;/a&gt;
    :
  &lt;/div&gt;
  &lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;
        &lt;a href=&quot;https://www.anaconda.com/docs/getting-started/anaconda/main&quot; target=&quot;_blank&quot;&gt;Anaconda Distribution&lt;/a&gt;
        installe conda ainsi que de nombreux package Python pour les data
        science et une interface graphique pour travailler avec vos
        environnements conda.
      &lt;/li&gt;
      &lt;li&gt;
        &lt;a href=&quot;https://www.anaconda.com/docs/getting-started/miniconda/main&quot; target=&quot;_blank&quot;&gt;Miniconda&lt;/a&gt;
        est une solution légère qui installe seulement Python, conda et les
        bibliothèques nécessaires pour l&#39;exécution de conda.
      &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/div&gt;
  &lt;div&gt;Personnellement, je choisis la seconde option, Miniconda.&lt;/div&gt;
  &lt;div&gt;
    Une fois Miniconda ou Anaconda téléchargé et installé, vous pouvez exécuter
    l&#39;Anaconda Prompt en le recherchant dans votre barre de recherche Windows.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV0nPl2L2hgd9LLao0gLH6qfOCIwy6scYJAXtPmAbzuW63D54k8JAVQJ3EdvFvMkkazJVesMMcX45BKIySEPvgtMkC9Id95IBdZk4MEqKDcX7l_4FU9fgi00sBBDyNHmbpy4UJoeLu9iPSlWvPQ8tf5hS1mZA_cnMCPNiPPOgD37D1J0HEls3GKIN_V7n3/s3877/miniconda.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1375&quot; data-original-width=&quot;3877&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV0nPl2L2hgd9LLao0gLH6qfOCIwy6scYJAXtPmAbzuW63D54k8JAVQJ3EdvFvMkkazJVesMMcX45BKIySEPvgtMkC9Id95IBdZk4MEqKDcX7l_4FU9fgi00sBBDyNHmbpy4UJoeLu9iPSlWvPQ8tf5hS1mZA_cnMCPNiPPOgD37D1J0HEls3GKIN_V7n3/s16000/miniconda.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Installer l&#39;API Python dans un environnement vierge&lt;/span&gt;
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div&gt;Voici la syntaxe de base pour créer un environnement avec conda :&lt;/div&gt;
  &lt;div&gt;&lt;b&gt;conda create -p CHEMIN\NOM_ENV python=VERSION [PACKAGES]&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
  &lt;div&gt;
    Vous pouvez remplacer l&#39;argument -p (qui donne le chemin complet
    personnalisé vers l&#39;environnement et inclut son nom) par -n et donner
    uniquement son nom à l&#39;env, qui s&#39;enregistrera alors dans le dossier par
    défaut.&amp;nbsp;
  &lt;/div&gt;
  &lt;div&gt;
    Dans notre cas, par exemple (à personnaliser avec votre propre chemin
    d&#39;accès) :
  &lt;/div&gt;
  &lt;div&gt;
    &lt;b&gt;conda create -p D:\envs\env_arcgis python=3.13&lt;/b&gt;&amp;nbsp;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwAw00uqqPbbW64CAOQIa7wlwEzy63F29sUY8Sk8kWsggqV_BMQIwmtm_HtDDFTfkvLUpd-NaO2ZYuNHzGsSn9at7qDrxMY8L5nxCn0X6jY0Q1uxfqdGaswcua1WndMV9_5KVgwcUy8OkhaFgDHvkQ0UIuPkHFXK4dqr-0MIsFbRrfeYhQQTNa0iMCpDTm/s1000/create.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;586&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwAw00uqqPbbW64CAOQIa7wlwEzy63F29sUY8Sk8kWsggqV_BMQIwmtm_HtDDFTfkvLUpd-NaO2ZYuNHzGsSn9at7qDrxMY8L5nxCn0X6jY0Q1uxfqdGaswcua1WndMV9_5KVgwcUy8OkhaFgDHvkQ0UIuPkHFXK4dqr-0MIsFbRrfeYhQQTNa0iMCpDTm/s16000/create.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Vous devez ensuite activer votre environnement&amp;nbsp; :
  &lt;/div&gt;
  &lt;div&gt;&lt;b&gt;conda activate D:\envs\env_arcgis&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
  &lt;div&gt;
    Vous pouvez vérifier qu&#39;il est bien activé car il apparait entre parenthèses
    :
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY7C1WvBIyA6h28baRdoSqGo0DcjWJO_F06oHOOOqp5pw1qR85-K7KFyMp6BVX-LqsvMSiNWzlH6G5PKcIpg8m45QnovXznF3gSso1m8PBvw5rfb2g152h8T1I4CG5fOvOdCnunIn81noM5LXDVikIocDSJsb71KiIJUaDON3eOjvwfE19d0y36uiBbE3G/s3424/activate.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2008&quot; data-original-width=&quot;3424&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY7C1WvBIyA6h28baRdoSqGo0DcjWJO_F06oHOOOqp5pw1qR85-K7KFyMp6BVX-LqsvMSiNWzlH6G5PKcIpg8m45QnovXznF3gSso1m8PBvw5rfb2g152h8T1I4CG5fOvOdCnunIn81noM5LXDVikIocDSJsb71KiIJUaDON3eOjvwfE19d0y36uiBbE3G/s16000/activate.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Vous pouvez alors installer les bibliothèques de votre choix, par exemple
    ici l&#39;API Python d&#39;ArcGIS (notez que vous pouvez également effectuer cette
    étape au moment de la création de l&#39;env) :&amp;nbsp;
  &lt;/div&gt;
  &lt;div&gt;
    &lt;b&gt;conda install -c esri arcgis&amp;nbsp;
&lt;/b&gt;    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUv9AiEhMaybabvIRWG85A3VkM05WjY2f9Mx2oTPKI3WvPOISzSv4VIZUyxmvD2aytmyLmmoCgyayWD_xTENuSaIT9O0VHnMLR_iF7blExcsLylaC7KRkHLQN_frva4nHS4BLahXTxLG3sPXmUacGEgsVI7k8CFCVrVLNFgIGw97ODEvTcGclicOjQuqOE/s1000/install-arcgis.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;582&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUv9AiEhMaybabvIRWG85A3VkM05WjY2f9Mx2oTPKI3WvPOISzSv4VIZUyxmvD2aytmyLmmoCgyayWD_xTENuSaIT9O0VHnMLR_iF7blExcsLylaC7KRkHLQN_frva4nHS4BLahXTxLG3sPXmUacGEgsVI7k8CFCVrVLNFgIGw97ODEvTcGclicOjQuqOE/s16000/install-arcgis.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    De cette manière, vous pouvez installer les environnements de votre choix,
    comme par exemple ipykernel si vous souhaitez l&#39;utiliser dans un notebook.
    Conda a l&#39;avantage de proposer une assez bonne résolution des conflits entre
    les différentes versions de bibliothèques.
  &lt;/div&gt;
  &lt;div&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div&gt;
    Il ne vous reste plus qu&#39;à définir ce nouvel environnement comme kernel
    d&#39;exécution dans votre IDE.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv2J-phFiyOV7IlhEkCl4yqfvcZABte-5yHy-KGfPqSTHamLPiYikVdiAwa1Z63rMFfHyL2_3kPa40U-MwpGoNaYcRrLzg6fd9Ho5myl_hFlgR0FhetwZxvmofG-tgX1C9I0t71UVWDVlFkhJzo7E5I_3zBgTQE0d5wp26xKHGIYA4QKkesYgtZlLtyIDw/s4579/kernel_vscode.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1415&quot; data-original-width=&quot;4579&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhv2J-phFiyOV7IlhEkCl4yqfvcZABte-5yHy-KGfPqSTHamLPiYikVdiAwa1Z63rMFfHyL2_3kPa40U-MwpGoNaYcRrLzg6fd9Ho5myl_hFlgR0FhetwZxvmofG-tgX1C9I0t71UVWDVlFkhJzo7E5I_3zBgTQE0d5wp26xKHGIYA4QKkesYgtZlLtyIDw/s16000/kernel_vscode.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Pour pouvoir utiliser le kernel dans Jupyter Notbook, il faut l&#39;enregistrer
    grâce à cette ligne (vous pouvez modifier le nom d&#39;affichage) :
  &lt;/div&gt;
  &lt;div&gt;
    &lt;b&gt;python -m ipykernel install --user --name env_arcgis --display-name &quot;Python
    (env_arcgis)&quot;&amp;nbsp;
  &lt;/b&gt;&lt;/div&gt;
  &lt;div&gt;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtoJDa-YSEkjOFQ6rVM4jEgxD8nsr71UO8dGnLV078yKOieupEWGtIe7ZkSyGqwwx7oBtXyznJNr8dYJ9T-NUTvkAawwEW3hbZvhQFzBL95js4847_ifkhIL4-UyExX80R4lpwl8BLOyPz2DF5ehuYO7S3MrrWx_iWdBoxmAg-Bq4Sbd9M5sQXPej5-yfD/s1216/kernel_jupyter.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;777&quot; data-original-width=&quot;1216&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtoJDa-YSEkjOFQ6rVM4jEgxD8nsr71UO8dGnLV078yKOieupEWGtIe7ZkSyGqwwx7oBtXyznJNr8dYJ9T-NUTvkAawwEW3hbZvhQFzBL95js4847_ifkhIL4-UyExX80R4lpwl8BLOyPz2DF5ehuYO7S3MrrWx_iWdBoxmAg-Bq4Sbd9M5sQXPej5-yfD/s16000/kernel_jupyter.png&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;h3&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Étendre l&#39;environnement par défaut d&#39;ArcGIS Pro&lt;/span&gt;
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div&gt;
    Si ArcGIS Pro est déjà installé sur votre machine, vous pouvez profiter de
    son environnement Python prêt à l&#39;emploi installé par défaut
    (arcgispro-py3), qui embarque déjà
    &lt;a href=&quot;https://pro.arcgis.com/fr/pro-app/3.4/arcpy/get-started/available-python-libraries.htm&quot; target=&quot;_blank&quot;&gt;l&#39;essentiel des dépendances nécessaires aux workflows SIG&lt;/a&gt;. Vous le trouverez dans le répertoire bin\Python\envs de votre
    installation, et pouvez l&#39;utiliser comme kernel d&#39;exécution dans votre IDE.
  &lt;/div&gt;
  &lt;div&gt;
    Cet environnement n&#39;est pas modifiable directement, mais vous pouvez
    facilement créer un clone pour y ajouter les bibliothèque de votre
    choix.&amp;nbsp;
  &lt;/div&gt;
  &lt;div&gt;Vous avez deux options pour cela :&amp;nbsp;&lt;/div&gt;
  &lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;
        passer par l&#39;interface du gestionnaire de paquetage inclus dans ArcGIS
        Pro. Très simple à prendre en main si vous n&#39;êtes pas habitué aux lignes
        de commandes, mais plutôt lent et avec une moins bonne résolution des
        conflits entre dépendances. Cette option vous limite également à l&#39;ajout
        de paquetages présents dans une liste prédéfinie (bien qu&#39;elle soit déjà
        très conséquente et couvre la grande majorité des usages) ;
      &lt;/li&gt;
    &lt;/ul&gt;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbH4f3BWHjJdeaqyZRNdiNs1J19cKm7z8FlbIyro3yjgTP5Ws2vA9GOEobDFWVeF386PaMuTPtTyYLy8zwLGTf6dBdGed5EXlqF-hpp0AGj3YD-UHJlb7r6zdiJLmZhIa7IUddF9cJNIq7w35AYAmoipozusAwON9fijIA1MUv-i2pc0-J0vu8T4C1CzAH/s1917/gestionnaire-paquetages.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1133&quot; data-original-width=&quot;1917&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbH4f3BWHjJdeaqyZRNdiNs1J19cKm7z8FlbIyro3yjgTP5Ws2vA9GOEobDFWVeF386PaMuTPtTyYLy8zwLGTf6dBdGed5EXlqF-hpp0AGj3YD-UHJlb7r6zdiJLmZhIa7IUddF9cJNIq7w35AYAmoipozusAwON9fijIA1MUv-i2pc0-J0vu8T4C1CzAH/s16000/gestionnaire-paquetages.jpg&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;ul&gt;
      &lt;li&gt;utiliser Miniconda et les lignes de commande. Cette option est plus
        rapide, vous permet d&#39;ajouter n&#39;importe quel paquetage distribué via
        Conda, et présente moins de problèmes d&#39;installation grâce à la
        résolution des conflits.
      &lt;/li&gt;
    &lt;/ul&gt;
    Voyons ensemble comment faire avec l&#39;Anaconda Prompt. Pour cloner l&#39;environnement, utiliser la commande suivante :&amp;nbsp;
  &lt;/div&gt;&lt;b&gt;conda create -p CHEMIN\NOM_ENV --clone NOM_ENV_EXISTANT&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj347T_RkLTdfLQKDmuq49nBlVAEeDlrq4-TNLYzA7X7f4fMteVTkE_5ubE4-X3lmJpQ6Rm-AINZbRm0jATjN2oxvUNSZBbxGgS1qKSm31T-61u1l3JXLeRk59_1RT5F1vVgIbhmYZzHe8HuiDLeZa6-fP3bouxea7E48Sd59ozhdjQ5uI3XTv1A0TJd-E-/s993/clone.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;526&quot; data-original-width=&quot;993&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj347T_RkLTdfLQKDmuq49nBlVAEeDlrq4-TNLYzA7X7f4fMteVTkE_5ubE4-X3lmJpQ6Rm-AINZbRm0jATjN2oxvUNSZBbxGgS1qKSm31T-61u1l3JXLeRk59_1RT5F1vVgIbhmYZzHe8HuiDLeZa6-fP3bouxea7E48Sd59ozhdjQ5uI3XTv1A0TJd-E-/s16000/clone.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;en donnant le chemin d&#39;accès complet vers l&#39;environnement à cloner. Cette étape prend plusieurs minutes.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div&gt;Vous devez ensuite activer votre environnement&amp;nbsp; :
  &lt;/div&gt;
  &lt;div&gt;&lt;b&gt;conda activate D:\envs\env_arcgispro_clone&lt;/b&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmUgurRSs3rIJEM7P3Ic2RxbdAavir-zaSRwFXZ9YrHnhc4wRtzSHyEhFdC5Y-wJZVxvhuMp6FkYsLRLd3-WPIx3yPgJ5YBQdIamwbZMFJZI5qaY2teO-MPBnnR_9ZoDjctKyUrmJrHb2v2e-9Dg5dqEKc8g3S4bzjmisZyiMx6v_U4MA0e1CMlrrrmYCk/s995/activate2.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;527&quot; data-original-width=&quot;995&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmUgurRSs3rIJEM7P3Ic2RxbdAavir-zaSRwFXZ9YrHnhc4wRtzSHyEhFdC5Y-wJZVxvhuMp6FkYsLRLd3-WPIx3yPgJ5YBQdIamwbZMFJZI5qaY2teO-MPBnnR_9ZoDjctKyUrmJrHb2v2e-9Dg5dqEKc8g3S4bzjmisZyiMx6v_U4MA0e1CMlrrrmYCk/s16000/activate2.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Il ne vous reste plus qu&#39;à ajouter les paquetages de votre choix :&lt;/div&gt;&lt;div&gt;&lt;b&gt;conda install NOM_DU_PAQUETAGE -c CANAL_DE_DISTRIBUTION&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgk7MViIARDdFvhyriimyT0yDOoWp46s-4wfo32n2Pm1MMd-6gPnaSLRj9oPYNUnZ8pZiNgBg8ETdIshwkUQ3SsjoYomOUu426ZxyUt52ClCCzabHr43-vuMyuwdkWydSXpQgmZCgFPEBmM7bsrPMQ-meIpaIIdkmct3qGZx6Crf8fzZxZcz5hEnjo1GdNu/s1002/install-pytorch.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;532&quot; data-original-width=&quot;1002&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgk7MViIARDdFvhyriimyT0yDOoWp46s-4wfo32n2Pm1MMd-6gPnaSLRj9oPYNUnZ8pZiNgBg8ETdIshwkUQ3SsjoYomOUu426ZxyUt52ClCCzabHr43-vuMyuwdkWydSXpQgmZCgFPEBmM7bsrPMQ-meIpaIIdkmct3qGZx6Crf8fzZxZcz5hEnjo1GdNu/s16000/install-pytorch.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Vous pouvez enfin vous en servir comme kernel d&#39;exécution dans votre IDE.&amp;nbsp;&lt;/div&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;C&#39;est la fin de ce premier tutoriel ! Maintenant que vous pouvez gérer vos environnements Python sans problème, nous nous retrouvons bientôt pour la suite des tutoriels où nous allons pouvoir commencer à coder 🐍&lt;/div&gt;
</description><link>https://www.codethemap.fr/2026/01/tutoriel-api-python-arcgis-1.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6X8asqDYmVvmk5U-L-iwrSi5z6QAwcpFsWb6q-Ew6EM4DUHzbiJujz6-r2Ge1h0-s7TngT6G28IRgL7bVVPUPhu8Yo2Lt20bo0u1bGUWvfSlVOotudhXMidJxHOV6KM_GRp0-aSfTsq91JWZQeM72BGMiE1B6MQNyqoAAzzC3IejdGXg5uo_Jw9SE-wH8/s72-c/tuto-py-26-1-texte.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-1214341729083118705</guid><pubDate>Thu, 18 Dec 2025 14:17:00 +0000</pubDate><atom:updated>2026-04-30T10:29:29.144+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Python</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Des nouveaux tutoriels sur l&#39;API Python d&#39;ArcGIS !</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://esrifrance.maps.arcgis.com/sharing/rest/content/items/532524e12d814fbe8eb4e1b9f15edba5/data&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comme je vous l&#39;avais promis l&#39;été dernier, les tutos sont de retour, cette
  fois-ci pour la saison hivernale ! Une bonne résolution pour l&#39;année 2026 ?
  Utiliser Python pour accélérer et automatiser vos workflows, avec l&#39;&lt;a href=&quot;https://developers.arcgis.com/python/&quot;&gt;API Python d&#39;ArcGIS&lt;/a&gt;.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7-eEXPEyLzoGc9y2AwXbqOviQGRNIcZIv_YKXoY0jzOEHfJuirn8Wu9Sh9xGpFQDUQrURV6Cf0uahNmWfpNbGqBa-ckRHvVNptJxuTr77qpwnCT7Zl5RHcv_6H6bSovfreb35OlrGEaLV8I4KE4cDU1lMkK1KrU5E6_M1JvZzKoa1RzEUGqrwr0wv6lhM/s2000/tuto-py-26-0-texte-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1119&quot; data-original-width=&quot;2000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7-eEXPEyLzoGc9y2AwXbqOviQGRNIcZIv_YKXoY0jzOEHfJuirn8Wu9Sh9xGpFQDUQrURV6Cf0uahNmWfpNbGqBa-ckRHvVNptJxuTr77qpwnCT7Zl5RHcv_6H6bSovfreb35OlrGEaLV8I4KE4cDU1lMkK1KrU5E6_M1JvZzKoa1RzEUGqrwr0wv6lhM/s16000/tuto-py-26-0-texte-min.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  C&#39;était déjà sur cette API qu&#39;ont porté les tutos de l&#39;été 2024, mais il y a
  tant à faire avec que j&#39;étais un peu frustrée de ne pas avoir pu vous en
  montrer plus... J&#39;ai donc collecté des demandes faites par mes collègues au
  cours de l&#39;année et les nouveautés intéressantes de l&#39;API pour vous proposer
  une série de scripts commentés que vous pourrez utiliser dans votre
  organisation. Au fil des tutos, je vous expliquerai également comment utiliser
  et comprendre la documentation pour que l&#39;API n&#39;ait plus aucun secret pour
  vous, et que vous puissiez l&#39;utiliser en autonomie.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  On se retrouve donc à la rentrée pour commencer 2026 en beauté !
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZsGQCJr7iw0AelICJrFcmdi08xu0XKuRD9eBHkjqPTR_bc8tO9b8fsRqX2_aR3N4p1dNez2wxXw5gXQLNkM2lkNfVcYztUqQIUdsIrajqyLzU0GtttQM3rvq5SqvvApQRhyphenhyphenRezThgaN2Lftvk8SNArOfctGD-prtFFLTH4_YbNV23_zigaeMA8QCC_XFI/s170/winterpython2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;170&quot; data-original-width=&quot;170&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZsGQCJr7iw0AelICJrFcmdi08xu0XKuRD9eBHkjqPTR_bc8tO9b8fsRqX2_aR3N4p1dNez2wxXw5gXQLNkM2lkNfVcYztUqQIUdsIrajqyLzU0GtttQM3rvq5SqvvApQRhyphenhyphenRezThgaN2Lftvk8SNArOfctGD-prtFFLTH4_YbNV23_zigaeMA8QCC_XFI/s16000/winterpython2.png&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Retrouvez dès maintenant les articles :&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://www.codethemap.fr/2026/01/tutoriel-api-python-arcgis-1.html&quot; target=&quot;_blank&quot;&gt;Installer et utiliser l’API Python d&#39;ArcGIS dans son propre environnement&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://www.codethemap.fr/2026/04/tutoriel-api-python-arcgis-2.html&quot; target=&quot;_blank&quot;&gt;Utiliser le module d&#39;IA de l&#39;API Python d&#39;ArcGIS pour analyser des photos&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Et attendant la suite, n&#39;hésitez pas à consulter la
  &lt;a href=&quot;https://www.codethemap.fr/2024/05/prise-en-main-api-python-arcgis-intro.html&quot; target=&quot;_blank&quot;&gt;série de l&#39;été de 2024 pour une première approche de l&#39;API Python&lt;/a&gt;, celle
  &lt;a href=&quot;https://www.codethemap.fr/2023/07/prise-en-main-de-lapi-javascript-intro.html&quot; target=&quot;_blank&quot;&gt;de 2023 sur le SDK JavaScript&lt;/a&gt;, ou consultez &lt;a href=&quot;532524e12d814fbe8eb4e1b9f15edba5&quot; target=&quot;_blank&quot;&gt;la section du blog dédiée aux tutoriels&lt;/a&gt; pour accéder à tous les
  tutoriels les plus récents, que je dissémine parfois au cours de
  l&#39;année.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;br /&gt;&amp;nbsp;&lt;img alt=&quot;&quot; class=&quot;h-full max-h-full w-auto max-w-full rounded object-contain&quot; src=&quot;https://chatgpt.com/backend-api/estuary/content?id=file_00000000a53c720a912dab6c8185336a&amp;amp;ts=490574&amp;amp;p=fs&amp;amp;cid=1&amp;amp;sig=7c80f96aa9e0fbc5948b77e4d0a09a61da24a727bf0ca9a8fdc206bce799d9cd&amp;amp;v=0&quot; /&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/12/tutoriels-api-python-arcgis.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7-eEXPEyLzoGc9y2AwXbqOviQGRNIcZIv_YKXoY0jzOEHfJuirn8Wu9Sh9xGpFQDUQrURV6Cf0uahNmWfpNbGqBa-ckRHvVNptJxuTr77qpwnCT7Zl5RHcv_6H6bSovfreb35OlrGEaLV8I4KE4cDU1lMkK1KrU5E6_M1JvZzKoa1RzEUGqrwr0wv6lhM/s72-c/tuto-py-26-0-texte-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-7412365968239286449</guid><pubDate>Tue, 16 Dec 2025 09:32:00 +0000</pubDate><atom:updated>2025-12-16T10:43:32.046+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ArcGIS Notebooks</category><category domain="http://www.blogger.com/atom/ns#">Python</category><title>Découvrez les modèles de notebooks dans ArcGIS Notebooks</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP8B2uyGizjCHdDRk9TS7_9q7-D7eeKhj_xshz0iH73Bk46CU-k-KaH_0VDZWdG49Aqkb5Sq4_TiKSTP0dVSOekdowKeLRUpkTAFXY7hIshqPTp9Kn89MSmzShIVoMuG0o-ShqwDLYxX5HyFTMn4VN5d89uva-IntWeFxYc1vqUsBk63rT5hjU-4WPApG/s16000/minia_modele_ntbk_v2-min.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;a href=&quot;https://www.esri.com/fr-fr/arcgis/products/arcgis-notebooks/overview&quot; target=&quot;_blank&quot;&gt;ArcGIS Notebooks&lt;/a&gt;
  est un environnement de développement basé sur Jupyter Notebook, intégré à la
  plateforme ArcGIS et facilitant le scripting dans la plateforme.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP8B2uyGizjCHdDRk9TS7_9q7-D7eeKhj_xshz0iH73Bk46CU-k-KaH_0VDZWdG49Aqkb5Sq4_TiKSTP0dVSOekdowKeLRUpkTAFXY7hIshqPTp9Kn89MSmzShIVoMuG0o-ShqwDLYxX5HyFTMn4VN5d89uva-IntWeFxYc1vqUsBk63rT5hjU-4WPApG/s2841/minia_modele_ntbk_v2-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1599&quot; data-original-width=&quot;2841&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP8B2uyGizjCHdDRk9TS7_9q7-D7eeKhj_xshz0iH73Bk46CU-k-KaH_0VDZWdG49Aqkb5Sq4_TiKSTP0dVSOekdowKeLRUpkTAFXY7hIshqPTp9Kn89MSmzShIVoMuG0o-ShqwDLYxX5HyFTMn4VN5d89uva-IntWeFxYc1vqUsBk63rT5hjU-4WPApG/s16000/minia_modele_ntbk_v2-min.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;Cet environnement permet notamment une connexion facile et sécurisée à la
  plateforme, un ajout rapide des outils d&#39;analyse et de vos contenus à vos
  scripts, l&#39;accès à des extraits de code à ajouter à vos scripts pour tous
  types de workflow ou encore la possibilité de publier vos notebooks en tant
  qu&#39;outils webs et la planification très simple de tâches pour automatiser
  l&#39;exécution de vos scripts.&amp;nbsp;
  &lt;/div&gt;&lt;div&gt;
  Il est disponible par défaut sur ArcGIS Online et ArcGIS Pro, et via un rôle
  serveur additionnel dans ArcGIS Enteprise, et vous avez pu le voir dans la
  plupart des tutoriels
  &lt;a href=&quot;https://www.codethemap.fr/search/label/Python&quot; target=&quot;_blank&quot;&gt;Python&lt;/a&gt;  de ce blog.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjthI3HIRaEdwbrTBZWdAKQujMNA89F0UeHj4-rf1EQ01AFMSg3JpFkIgFI_yuzzC-JlOQRAqdBA8gTUr_Hpp_i6xXd4aaZVx_XYKbuxaZOXgve4V5gYj-VfBX3bHVx2lr1vU_eecjUmAmOOvxmfSKNnrcF_Wr4HZonfU8aHXdWj-cFMuApvkI2l6fu0gXy/s4421/illu-avantages-notebooks.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2326&quot; data-original-width=&quot;4421&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjthI3HIRaEdwbrTBZWdAKQujMNA89F0UeHj4-rf1EQ01AFMSg3JpFkIgFI_yuzzC-JlOQRAqdBA8gTUr_Hpp_i6xXd4aaZVx_XYKbuxaZOXgve4V5gYj-VfBX3bHVx2lr1vU_eecjUmAmOOvxmfSKNnrcF_Wr4HZonfU8aHXdWj-cFMuApvkI2l6fu0gXy/s16000/illu-avantages-notebooks.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Dans la dernière mise à jour d&#39;ArcGIS Notebooks dans ArcGIS Online, Esri a
  apporté une nouveauté sur laquelle j&#39;aimerais attirer votre attention : les
  modèles de Notebooks.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrTYjfSu2Ij74NGO7VGCX5r44AFlLJwEJpzkEvRAbZXJPc09CE67xTzVoBvIsy0rQ0hoTyr6KxStU1xVdkMrFJ8OpicEQnmS5M40goSOljWeatvOriAeRVLBD0armLEUmSPZrxTwVsprHPdLe4xS8NfjONFcysZMf4ysJxVlKJIQ-dm8MKhOCidAk71e8C/s595/nouveau_ntbk_modele.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;595&quot; data-original-width=&quot;373&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrTYjfSu2Ij74NGO7VGCX5r44AFlLJwEJpzkEvRAbZXJPc09CE67xTzVoBvIsy0rQ0hoTyr6KxStU1xVdkMrFJ8OpicEQnmS5M40goSOljWeatvOriAeRVLBD0armLEUmSPZrxTwVsprHPdLe4xS8NfjONFcysZMf4ysJxVlKJIQ-dm8MKhOCidAk71e8C/s16000/nouveau_ntbk_modele.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Ces modèles sont des notebooks pré-rédigés par les équipes d&#39;Esri pour vous
  permettre de répondre rapidement à des problématiques courantes, réparties en
  5 catégories : administration, gestion de contenu, Data science et analyse
  spatiale, Deep Learning, et enfin cartes et applications.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpgCEF9XhhWk4RVcQEpyzyB6IN-0FTUO27djPWijExPGrxdX1BwAtteHjD0zmLo6UOoCVYLCYJvTra6JJ3UWm5zlmjhAuwS56C2-o_pcFs17sQ-2y47bN_qM4KqoCHAFjiqICeG8yiPT_5yBhyphenhyphenjwkQlj7lWjBv0JThH_I-rR7UjqYaEgDcVTdtBdAS5Y8B/s972/cat%C3%A9g_mod%C3%A8les.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;765&quot; data-original-width=&quot;972&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpgCEF9XhhWk4RVcQEpyzyB6IN-0FTUO27djPWijExPGrxdX1BwAtteHjD0zmLo6UOoCVYLCYJvTra6JJ3UWm5zlmjhAuwS56C2-o_pcFs17sQ-2y47bN_qM4KqoCHAFjiqICeG8yiPT_5yBhyphenhyphenjwkQlj7lWjBv0JThH_I-rR7UjqYaEgDcVTdtBdAS5Y8B/s16000/cat%C3%A9g_mod%C3%A8les.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  En choisissant un notebook dans l&#39;une de ces catégories, vous accéderez à un
  script composé d&#39;un ensemble de cellules rédigées et documentées, que vous
  pouvez exécuter entièrement ou en partie.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhnRtulJEigFr8Q2qBPdOG9_5oBiSgnCIWz-0Ku4g66SzYvkvzBC1RTJqXIMkGyJXy-Sre4yCXtHW2v6E_QW-yuej4iDKmojFHLkRwCQgc7-Xr2EO9mhAs6hpLmp4QEMs6S2DVe4iOpRyso1F36elDZKQiMUmax1pvPxQqMBvgG3Zxc4kKbUrfVDgB0uNE/s1917/ex_mod%C3%A8le_ntbk.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;980&quot; data-original-width=&quot;1917&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhnRtulJEigFr8Q2qBPdOG9_5oBiSgnCIWz-0Ku4g66SzYvkvzBC1RTJqXIMkGyJXy-Sre4yCXtHW2v6E_QW-yuej4iDKmojFHLkRwCQgc7-Xr2EO9mhAs6hpLmp4QEMs6S2DVe4iOpRyso1F36elDZKQiMUmax1pvPxQqMBvgG3Zxc4kKbUrfVDgB0uNE/s16000/ex_mod%C3%A8le_ntbk.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Vous possédez bien sûr la possibilité de modifier le notebook à votre guise,
  supprimer certaines parties ou en rajouter d&#39;autres pour que le workflow
  corresponde exactement à vos besoins. Ces modèles constituent une base très
  complète pour vous faire gagner du temps sur l&#39;élaboration de vos scripts.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  A l&#39;heure actuelle, 18 modèles différents sont disponibles. Je vous encourage
  donc fortement à aller découvrir les différents workflows proposés !&amp;nbsp;
&lt;/div&gt;

&lt;/div&gt;</description><link>https://www.codethemap.fr/2025/12/modeles-ArcGIS-Notebooks.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVP8B2uyGizjCHdDRk9TS7_9q7-D7eeKhj_xshz0iH73Bk46CU-k-KaH_0VDZWdG49Aqkb5Sq4_TiKSTP0dVSOekdowKeLRUpkTAFXY7hIshqPTp9Kn89MSmzShIVoMuG0o-ShqwDLYxX5HyFTMn4VN5d89uva-IntWeFxYc1vqUsBk63rT5hjU-4WPApG/s72-c/minia_modele_ntbk_v2-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-6895985290278984748</guid><pubDate>Mon, 15 Dec 2025 09:10:00 +0000</pubDate><atom:updated>2025-12-15T10:10:06.523+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Game Engines</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><category domain="http://www.blogger.com/atom/ns#">Moteurs de jeu</category><category domain="http://www.blogger.com/atom/ns#">Unity</category><category domain="http://www.blogger.com/atom/ns#">Unreal Engine</category><title>Nouveautés de la version 2.2 des ArcGIS Maps SDK for Game Engines</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img
    src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVMQlUAjBUTSAkA_yWOIIedRKo5O23FE5nrL-OJrozWFLNtoTPzEm8f27qY8l0qsF6hVqIPAHYOmG3LURk17VUGaw-j01t2pcJjXQtGm36kYUpUfPX7IkBsw0OnRd3sjHclf364Mj3od0eh86b29uTDFl7YHqRQQqdDQf5yFYx8o5CZMmykNcL1Wi9KPJH/s16000/majGEminia-min.jp&quot;
    style=&quot;display: none;&quot;
  /&gt;
&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  C&#39;est la dernière mise à jour de l&#39;année pour les SDKs d&#39;ArcGIS pour Unity et
  Unreal Engine, qui passent à la version 2.2 ! Trois évolutions majeures sont à
  noter : la possibilité de visualiser des nuages de points volumineux, une
  nouvelle API pour récupérer les attributs des entités à partir d&#39;une
  interaction utilisateur, et un plus grand contrôle sur l&#39;apparence des couches
  de scènes de bâtiments. Découvrez cela en détail dans cet article.&amp;nbsp;
  &amp;nbsp;&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVMQlUAjBUTSAkA_yWOIIedRKo5O23FE5nrL-OJrozWFLNtoTPzEm8f27qY8l0qsF6hVqIPAHYOmG3LURk17VUGaw-j01t2pcJjXQtGm36kYUpUfPX7IkBsw0OnRd3sjHclf364Mj3od0eh86b29uTDFl7YHqRQQqdDQf5yFYx8o5CZMmykNcL1Wi9KPJH/s2840/majGEminia-min.jpg&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;display: none;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1598&quot;
        data-original-width=&quot;2840&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVMQlUAjBUTSAkA_yWOIIedRKo5O23FE5nrL-OJrozWFLNtoTPzEm8f27qY8l0qsF6hVqIPAHYOmG3LURk17VUGaw-j01t2pcJjXQtGm36kYUpUfPX7IkBsw0OnRd3sjHclf364Mj3od0eh86b29uTDFl7YHqRQQqdDQf5yFYx8o5CZMmykNcL1Wi9KPJH/s16000/majGEminia-min.jpg&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Visualisation de nuages de points volumineux&amp;nbsp;&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le nouveau type de couche Point Cloud Layer permet d’afficher des nuages de
  points 3D très volumineux avec des performances élevées directement dans vos
  niveaux Unreal et vos scènes Unity. Les nuages de points proviennent
  généralement de relevés LiDAR (light detection and ranging), une technique de
  télédétection optique utilisant un faisceau laser pour échantillonner très
  densément la surface d’environnements naturels, urbains, d’espaces intérieurs,
  ou même d’objets individuels. Cette méthode produit des mesures x, y, z
  extrêmement précises.&lt;br /&gt;Les capteurs LiDAR existent sous de nombreuses
  formes : montés sur avions, hélicoptères, véhicules pour les campagnes à large
  échelle, et désormais même intégrés à de nombreux smartphones récents.&lt;br /&gt;&lt;br /&gt;Comme
  les nuages de points peuvent contenir des millions de points, Esri génère,
  pour une visualisation efficace, des couches de scènes de nuages de points
  optimisées selon une approche HLOD (Hierarchical Level of Detail) à l’aide de
  l’outil de géotraitement &quot;&lt;a
    href=&quot;https://pro.arcgis.com/fr/pro-app/3.4/tool-reference/data-management/create-point-cloud-scene-layer-package.htm&quot;
    target=&quot;_blank&quot;
    &gt;Créer le contenu d&#39;une couche de scène de nuage de points&lt;/a
  &gt;&quot; dans ArcGIS Pro. Cet outil prend en entrée des données au format LAS, un
  format binaire ouvert couramment utilisé pour partager des données LiDAR
  (ainsi que sa variante compressée optimisée). Lors de la création de la couche
  de scène dans ArcGIS Pro, l’utilisateur choisit quel attributs importer :
  intensité, couleur, code de classification, etc. Ces attributs pourront
  ensuite servir modifier le style d&#39;affichage du nuage de points dans la couche
  de scène.&lt;br /&gt;&lt;br /&gt;Comme pour toutes les couches des SDKs pour moteurs de
  jeux, les nuages de points peuvent être diffusés depuis des services lorsque
  l’application est en ligne, ou depuis des Scene Layer Packages locaux lorsque
  l’application est hors connexion.&lt;br /&gt;&lt;br /&gt;Dans cette version, le style des
  couches de nuages de points est défini par le producteur de la donnée : il
  n’est pas encore possible de définir ou modifier le style via l’API. Esri
  prévoit toutefois d’intégrer des APIs dédiées à la modification du style dans
  une future version.
  &lt;table
    align=&quot;center&quot;
    cellpadding=&quot;0&quot;
    cellspacing=&quot;0&quot;
    class=&quot;tr-caption-container&quot;
    style=&quot;margin-left: auto; margin-right: auto;&quot;
  &gt;
    &lt;tbody&gt;
      &lt;tr&gt;
        &lt;td style=&quot;text-align: center;&quot;&gt;
          &lt;a
            href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGoeVyxhNSVNXByAarxRZiSnXEcQuJcMfNNNHA1g93SMmdnsmx44TiZtlWhr3_VBLC-qeqVdVBiU8Xf2hxSy_JX557IOKeq6hD6CbTEX3Yb4HZtcF5GqgL0Gkrb9PSXS0yPYGM2YhlonUcmhNjj8yYRC88C0hMw3YqLV2DBsUDwfoTNKzt19Om0T09frSc/s1280/UnrealPointCloud-1280x720-1.png&quot;
            style=&quot;margin-left: auto; margin-right: auto;&quot;
            &gt;&lt;img
              border=&quot;0&quot;
              data-original-height=&quot;720&quot;
              data-original-width=&quot;1280&quot;
              src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGoeVyxhNSVNXByAarxRZiSnXEcQuJcMfNNNHA1g93SMmdnsmx44TiZtlWhr3_VBLC-qeqVdVBiU8Xf2hxSy_JX557IOKeq6hD6CbTEX3Yb4HZtcF5GqgL0Gkrb9PSXS0yPYGM2YhlonUcmhNjj8yYRC88C0hMw3YqLV2DBsUDwfoTNKzt19Om0T09frSc/s16000/UnrealPointCloud-1280x720-1.png&quot;
          /&gt;&lt;/a&gt;
        &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
        &lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;
          Couche de nuage de points avec rendu couleur RVB.&amp;nbsp; Source: OCM
          Partners, 2025: 2013 USACE NCMP Topobathy Lidar: Barnegat Bay &amp;amp;
          Seaside Heights (NJ),
          https://www.fisheries.noaa.gov/inport/item/49862.
        &lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;
  &lt;/table&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Récupérer les attributs des features dans les couches de scène d&#39;objets
    3D&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette mise à jour introduit deux nouvelles méthodes Identify dans la classe
  ArcGISView, qui offrent des APIs simples pour récupérer les attributs des
  entités présentes dans les 3D Object Scene Layers (également appelés feature
  metadata dans Unreal Engine et Unity). ArcGISView.IdentifyLayerAsync réalise
  un appel d’identification asynchrone sur une couche spécifique tandis que
  ArcGISView.IdentifyLayersAsync effectue un appel d’identification asynchrone
  sur toutes les 3D Object Scene Layers d’une carte. Ces méthodes facilitent la
  création de workflows où l’utilisateur interagit avec la scène pour obtenir
  les attributs d’une entité à un emplacement donné. Les paramètres d’entrée des
  deux méthodes incluent un point d’origine et un point cible, correspondant
  généralement à la position de la caméra et à l’endroit où l’utilisateur clique
  ou touche la scène.&lt;br /&gt;&lt;br /&gt;Ces nouvelles APIs simplifient considérablement
  le développement : elles évitent d’avoir à mettre en œuvre des raycasts
  complexes et permettent de proposer aux utilisateurs des expériences plus
  fluides d’exploration des données, avec des applications plus riches et
  interactives.&lt;br /&gt;&lt;br /&gt;Les opérations Identify servent souvent de base à des
  workflows plus avancés, comme : naviguer vers un objet identifié, afficher ses
  attributs, ou mettre visuellement en évidence une entité. Vous pouvezpar
  exemple appliquer un effet de surbrillance en modifiant le shader de l&#39;entité
  retournée par l’opération Identify. Parmi les autres usages courants, vous
  pouvez par exemple : comparer des attributs, ajouter des labels, ou interroger
  d’autres systèmes métier pour afficher des informations complémentaires dans
  l’UI.&lt;br /&gt;&lt;br /&gt;Esri prévoit de publier un sample dans le
  &lt;a
    href=&quot;https://github.com/Esri/arcgis-maps-sdk-unreal-engine-samples&quot;
    target=&quot;_blank&quot;
    &gt;GitHub du Maps SDK for Unreal Engine&lt;/a
  &gt;
  et sur
  &lt;a
    href=&quot;https://github.com/Esri/arcgis-maps-sdk-unity-samples&quot;
    target=&quot;_blank&quot;
    &gt;celui de Unity &lt;/a
  &gt;montrant comment : appeler l’Identify, afficher les attributs retournés et
  mettre en surbrillance la feature identifiée pour une indication visuelle
  claire.&amp;nbsp;Une future API dédiée au highlight des entités retournées est
  également en cours d&#39;élaboration.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2qzFKio-0fh03W7D2ek_EHlJX5AQ0vwLr2skDfrIsxPKt74lO5JnUpKT73RjLFKijG7DSfOaGnw7HsxmGQmn30vy1fy2_tq5rnvnq6PGiLnCYOgAMVcaYfNpB8DlRfG2xWTuBf2NMn6u5l0iGmiVxSh9e8EdLuku0nIGnTwXNMcXPOK9NnGPS0JTywzdy/s1943/identify.png&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;965&quot;
        data-original-width=&quot;1943&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2qzFKio-0fh03W7D2ek_EHlJX5AQ0vwLr2skDfrIsxPKt74lO5JnUpKT73RjLFKijG7DSfOaGnw7HsxmGQmn30vy1fy2_tq5rnvnq6PGiLnCYOgAMVcaYfNpB8DlRfG2xWTuBf2NMn6u5l0iGmiVxSh9e8EdLuku0nIGnTwXNMcXPOK9NnGPS0JTywzdy/s16000/identify.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Application de matériaux personnalisés aux couches de scène de
    bâtiments&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Il est désormais possible d’appliquer des matériaux personnalisés aux couches
  de scènes de bâtiments, complétant ainsi la prise en charge des custom
  materials pour tous les types de couches du SDK qui utilisent un rendu
  surfacique.L’ajout de la propriété MaterialReference dans la classe Building
  Scene Layer permet de modifier le rendu en appliquant des matériaux destinés à
  mettre en avant certains aspects de la donnée ou à personnaliser l’apparence
  de la couche.&lt;br /&gt;&lt;br /&gt;Les building scene layers prennent en charge
  différents filtres permettant d’afficher ou masquer : des niveaux d’un
  bâtiment, des phases de construction, des disciplines ou des catégories
  d’objets. Ces filtres se combinent avec les matériaux personnalisés pour
  produire une visualisation ciblée selon les critères choisis. Un cas d’usage
  courant consiste à réaliser des analyses de visibilité : les zones visibles
  depuis un point de vue reçoivent une couleur, les zones cachées une couleur
  contrastée. Avec l’arrivée des matériaux personnalisés sur les building scene
  layers, ce type d’analyse peut désormais s’appliquer à toutes les couches
  d’une scène, notamment lorsque vous combinez des integrated mesh scene layers,
  des 3D object scene layers et des building scene layers dans une même
  scène.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3 style=&quot;text-align: justify;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Plus d&#39;informations&amp;nbsp;&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      Pour les informations complètes sur cette nouvelle version, rendez-vous
      dans les notes de version du SDK de votre choix :&amp;nbsp;&amp;nbsp;
    &lt;/div&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      &lt;ul&gt;
        &lt;li&gt;
          &lt;a
            class=&quot;text-inherit hover:text-citra-white hover:no-underline focus-visible:text-citra-white focus-visible:no-underline&quot;
            href=&quot;https://developers.arcgis.com/unity/release-notes/release-notes-2-2-0/&quot;
            target=&quot;_blank&quot;
            &gt;ArcGIS Maps SDK for Unity&lt;/a
          &gt;
        &lt;/li&gt;
        &lt;li&gt;
          &lt;a
            href=&quot;https://developers.arcgis.com/unreal-engine/release-notes/release-notes-2-2-0/&quot;
            &gt;ArcGIS Maps SDK for Unreal Engine&lt;/a
          &gt;
        &lt;/li&gt;
      &lt;/ul&gt;
      Pour mettre la main sur la version 2.1 des SDKs, rendez-vous sur la page
      de téléchargement du
      &lt;a href=&quot;https://developers.arcgis.com/downloads/&quot; target=&quot;_blank&quot;
        &gt;site Web d&#39;ArcGIS consacré aux développeurs&lt;/a
      &gt;,puis accédez à la page du SDK ArcGIS Maps de votre choix et
      téléchargez-le.&amp;nbsp; Si vous n&#39;avez pas l&#39;habitude de développer avec les
      SDKs d&#39;ArcGIS, il vous suffit de de vous rendre sur la page &quot;Get Started&quot;
      dans la documentation du
      &lt;a href=&quot;https://developers.arcgis.com/unity/get-started/&quot; target=&quot;_blank&quot;
        &gt;SDK ArcGIS Maps pour Unity&lt;/a
      &gt;
      ou du
      &lt;a
        href=&quot;https://developers.arcgis.com/unreal-engine/get-started/&quot;
        target=&quot;_blank&quot;
        &gt;SDK ArcGIS Maps pour Unreal Engine&lt;/a
      &gt;.&amp;nbsp; &amp;nbsp;
    &lt;/div&gt;
  &lt;/div&gt;
  &amp;nbsp;
&lt;/div&gt;

</description><link>https://www.codethemap.fr/2025/12/nouveautes-de-la-version-22-des-arcgis.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVMQlUAjBUTSAkA_yWOIIedRKo5O23FE5nrL-OJrozWFLNtoTPzEm8f27qY8l0qsF6hVqIPAHYOmG3LURk17VUGaw-j01t2pcJjXQtGm36kYUpUfPX7IkBsw0OnRd3sjHclf364Mj3od0eh86b29uTDFl7YHqRQQqdDQf5yFYx8o5CZMmykNcL1Wi9KPJH/s72-c/majGEminia-min.jp" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-120658585963620014</guid><pubDate>Thu, 20 Nov 2025 09:53:00 +0000</pubDate><atom:updated>2026-01-07T17:39:35.438+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Game Engines</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><category domain="http://www.blogger.com/atom/ns#">Unreal Engine</category><title>Utiliser le SDK d&#39;ArcGIS pour Unreal Engine pour un projet d&#39;aménagement</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgDw04AT9Uc-tM0W63y9ulSAe4cxM1du2CAw8Q3jpOUEB-KHr3gVC50lknwTxH_4EA5jPIbTMF2k02X12BB81AyC0u6hYnJlO0BZ8QgDLVFQvyspIFDk9vfs12jwBaidpoAS48KmFThOAxEGQ8M_OybtUXGlLyHAV3IAfI-cDc8inVWkjExfB6z69L96XO/s16000/minia_pasapas_unreal-min.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les ArcGIS Maps SDK for Game Engines permettent de créer des environnements
  photoréalistes et immersives en tirant parti des capacités des moteurs de jeux
  pour intégrer vos données SIG.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette année, j&#39;ai eu l&#39;occasion d&#39;écrire un Pas à Pas consacré au SDK d&#39;ArcGIS
  pour Unreal&amp;nbsp;dans
  &lt;a href=&quot;https://www.sigtv.fr/shop/SIGMAG-numero-45-juin-2025-version-papier-numerique_p107.html&quot; target=&quot;_blank&quot;&gt;le numéro 45&lt;/a&gt;&amp;nbsp;magazine SIGMAG.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgDw04AT9Uc-tM0W63y9ulSAe4cxM1du2CAw8Q3jpOUEB-KHr3gVC50lknwTxH_4EA5jPIbTMF2k02X12BB81AyC0u6hYnJlO0BZ8QgDLVFQvyspIFDk9vfs12jwBaidpoAS48KmFThOAxEGQ8M_OybtUXGlLyHAV3IAfI-cDc8inVWkjExfB6z69L96XO/s2871/minia_pasapas_unreal-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1623&quot; data-original-width=&quot;2871&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgDw04AT9Uc-tM0W63y9ulSAe4cxM1du2CAw8Q3jpOUEB-KHr3gVC50lknwTxH_4EA5jPIbTMF2k02X12BB81AyC0u6hYnJlO0BZ8QgDLVFQvyspIFDk9vfs12jwBaidpoAS48KmFThOAxEGQ8M_OybtUXGlLyHAV3IAfI-cDc8inVWkjExfB6z69L96XO/s16000/minia_pasapas_unreal-min.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En 10 étapes, je vous explique comment créer votre premier projet avec le SDK,
  comment définir votre scène, comment ajouter les données de votre SIG et
  comment modifier un Mesh 3D existant dans le contexte d&#39;un projet
  d&#39;aménagement urbain. Ce tutoriel est idéal pour une première prise en main de
  l&#39;interface sans code d&#39;Unreal et du SDK.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Retrouvez &lt;a href=&quot;https://www.arcorama.fr/2025/11/pas-pas-initiation-larcgis-maps-sdk-for.html&quot;&gt;le tutoriel complet sur le blog arcOrama&lt;/a&gt;, en partenariat avec SIGMAG.&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://www.arcorama.fr/2025/11/pas-pas-initiation-larcgis-maps-sdk-for.html&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;990&quot; data-original-width=&quot;1540&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDeh5ncPcYIYoFa8cHwrWBsk66T5jE5ksnpuPtvxxJxnWU-YbRcJduC1eV8o1MEg408SnCOQn4QIWA4CyEWugh6TqedAKxAckqG9oB3iPHzoPuUo85EiQc2SZbmkplgbQcMJVGDv2OgF17BzgdwxvHuEGXETelJCV90EnVoPcMKTVyYPcrjRSKNpgAFd27/s16000/image-8.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/11/utiliser-le-sdk-darcgis-pour-unreal.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgDw04AT9Uc-tM0W63y9ulSAe4cxM1du2CAw8Q3jpOUEB-KHr3gVC50lknwTxH_4EA5jPIbTMF2k02X12BB81AyC0u6hYnJlO0BZ8QgDLVFQvyspIFDk9vfs12jwBaidpoAS48KmFThOAxEGQ8M_OybtUXGlLyHAV3IAfI-cDc8inVWkjExfB6z69L96XO/s72-c/minia_pasapas_unreal-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-1902514613753226968</guid><pubDate>Wed, 12 Nov 2025 08:12:00 +0000</pubDate><atom:updated>2025-11-12T09:12:00.106+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ArcGIS Developer</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">Python</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Imaginer une carte de la population en 2125</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRzIXamIkNkAIFq9eITs3bl1CWiy2IX-QMttKroEvGaXHGXa-yulnXyIJuhXAUDO0oWh_iPOcYR94VOb9-ITBf3kSxOojtoYc1TASoE32gb_vDqk61iqAID4lPkcwTV8HCAVAXUp1dD4Xa6x-uHeTFC33Wbs3aY11uQUAAQq9vbryylbLSdrINkcGJpe4_/s16000/minia_2125-min.gif&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  C&#39;est le mois du
  &lt;a href=&quot;https://30daymapchallenge.com/&quot; target=&quot;_blank&quot;&gt;#30DayMapChallenge&lt;/a&gt;, et comme l&#39;an dernier, nous formons une équipe avec mes collègues pour
  relever le défi ! Et comme l&#39;an dernier, je me rajoute la contrainte
  supplémentaire de non seulement de créer une carte, mais aussi de le faire en
  utilisant
  &lt;a href=&quot;https://developers.arcgis.com/&quot; target=&quot;_blank&quot;&gt;les technologies de dév d&#39;ArcGIS&lt;/a&gt;
  et de vous proposer un tutoriel sur ce blog.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRzIXamIkNkAIFq9eITs3bl1CWiy2IX-QMttKroEvGaXHGXa-yulnXyIJuhXAUDO0oWh_iPOcYR94VOb9-ITBf3kSxOojtoYc1TASoE32gb_vDqk61iqAID4lPkcwTV8HCAVAXUp1dD4Xa6x-uHeTFC33Wbs3aY11uQUAAQq9vbryylbLSdrINkcGJpe4_/s1034/minia_2125-min.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;580&quot; data-original-width=&quot;1034&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRzIXamIkNkAIFq9eITs3bl1CWiy2IX-QMttKroEvGaXHGXa-yulnXyIJuhXAUDO0oWh_iPOcYR94VOb9-ITBf3kSxOojtoYc1TASoE32gb_vDqk61iqAID4lPkcwTV8HCAVAXUp1dD4Xa6x-uHeTFC33Wbs3aY11uQUAAQq9vbryylbLSdrINkcGJpe4_/s16000/minia_2125-min.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette année je ne fais qu&#39;une carte, celle du jour 12 sur le thème &quot;Map from
  2125&quot; (&quot;Carte de 2125&quot;). Pas facile d&#39;imaginer ce à quoi va ressembler la
  Terre dans 100 ans... Et si on n&#39;était plus seuls sur Terre ? Évidemment,
  lorsque l&#39;on parle de l&#39;avenir, on ne peut pas s&#39;empêcher d&#39;imaginer que l&#39;IA
  va prendre une place de plus en plus importante dans nos vies. Et si demain,
  l&#39;IA se développait toute seule, créait ses propres communautés, et était
  considérée comme une espèce à part entière ? Et si des hybrides humains / IA
  émergeaient ? C&#39;est ce scénario qui m&#39;a poussée à imaginer une carte de la
  population terrestre en 2125, où nous aurions maintenant à classer les
  habitants selon leur espèce : humain, IA, ou hybride.Vous pouvez explorer
  l&#39;application
  &lt;a href=&quot;https://japalenos.github.io/JS-API/2125-30DayMapChallenge/&quot; target=&quot;_blank&quot;&gt;en live ici&lt;/a&gt;
  !&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCdodtx5Epz5HqIcAaLGugKFfcZWpDEqHKyD9mUakT6ctOAqAfVOtddlxEGMIfSs2ey_KX8wmeJYdFPL785CnA0yOAvKrtMq-GH7o_fg39FpZxFlfKobqkCtgkjy6txrOFHhdW_xtAiOMO6IUIqcuVL4vjUhiIVi6izG4OcqAxPuz1pyEso519OJQV10hF/s1302/app_global.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1302&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCdodtx5Epz5HqIcAaLGugKFfcZWpDEqHKyD9mUakT6ctOAqAfVOtddlxEGMIfSs2ey_KX8wmeJYdFPL785CnA0yOAvKrtMq-GH7o_fg39FpZxFlfKobqkCtgkjy6txrOFHhdW_xtAiOMO6IUIqcuVL4vjUhiIVi6izG4OcqAxPuz1pyEso519OJQV10hF/s16000/app_global.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  En zoomant sur des clusters, on peut imaginer ce que l&#39;on veut : Ouest de
  Paris habité par les humains, Est contrôlé par les IA.&amp;nbsp; S&#39;entendent-ils
  bien ou s&#39;agit-il d&#39;une ségrégation imposée dans la violence ? Vous pouvez
  interpréter la carte comme vous voulez !
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBQZxzRW3gOhapVCuxwnhh4FvaqPYNvTA42A9CcyClAjxYKseWud5ug0JGfrRJP4drmvA2aLPjGnBtEz4uMKA7-ymNVsV9KwqzI49Rbnka_OwwX5ir3A5VuDxdOmARrosHvps084BpHYRpouKIVN-dzIkc1V-UB_TEjtoIJBPwi16iR-zWAt3_f4Xhy0Rb/s1330/ParIA.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;852&quot; data-original-width=&quot;1330&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBQZxzRW3gOhapVCuxwnhh4FvaqPYNvTA42A9CcyClAjxYKseWud5ug0JGfrRJP4drmvA2aLPjGnBtEz4uMKA7-ymNVsV9KwqzI49Rbnka_OwwX5ir3A5VuDxdOmARrosHvps084BpHYRpouKIVN-dzIkc1V-UB_TEjtoIJBPwi16iR-zWAt3_f4Xhy0Rb/s16000/ParIA.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Une carte de 2125, ça appelle aussi à une esthétique particulière. J&#39;ai pu me
  lâcher sur les néons et des effets divers pour mon plus grand plaisir, tout en
  essayant de ne pas tomber dans une esthétique trop cliché et en gardant un
  côté très onirique. Je trouve qu&#39;on pourrait presque se croire dans un tableau
  de Van Gogh, par le choix des couleurs et surtout grâce à l&#39;effet de flux dont
  on va reparler.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWC-Uy1LgV3k_6c9-8-1OTQsaazpXuoWkTxwAtiR_kfHEYQ68-qPxKOOW_U0kaeLgrgiTVlooCnzI8ZXpwtRZBjPEk18ifHzhPDmrqBIF2Dw-6DUvV1W5ZjusMcjh_HxtnGgYgIjj70s5Y6rvPGR3yI1jwuoT1HPI4Y10HEyIAvqiHk_9ZBqYDhnJ1hCrO/s1034/minia_2125.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;580&quot; data-original-width=&quot;1034&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWC-Uy1LgV3k_6c9-8-1OTQsaazpXuoWkTxwAtiR_kfHEYQ68-qPxKOOW_U0kaeLgrgiTVlooCnzI8ZXpwtRZBjPEk18ifHzhPDmrqBIF2Dw-6DUvV1W5ZjusMcjh_HxtnGgYgIjj70s5Y6rvPGR3yI1jwuoT1HPI4Y10HEyIAvqiHk_9ZBqYDhnJ1hCrO/s16000/minia_2125.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Enfin, qui dit monde à moitié peuplé par des IA, dit que ma carte doit aussi
  s&#39;adresser à elles. Avez-vous essayé de voir ce qui se passe quand vous
  cliquez sur le bouton&amp;nbsp; en bas à gauche?&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTSf9HWD2MJVW0rgtY-_yw8rwqlP1NcE47h4RnDhPy0pw9yBoG5F3q6T4UDbq0eQsLC4zD0wiPP09R_l7ehzXFd5EYiYXoN6aOwPFwSv-Zl7Y4SgD2Wxx_yUuI2LmxlPK5CSQH67tG_qi6bc1iQ6_CeNDP1-s2XQfdSbIio4GN7VL8q49KwrEB_e5j28F9/s1302/Binary.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;850&quot; data-original-width=&quot;1302&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTSf9HWD2MJVW0rgtY-_yw8rwqlP1NcE47h4RnDhPy0pw9yBoG5F3q6T4UDbq0eQsLC4zD0wiPP09R_l7ehzXFd5EYiYXoN6aOwPFwSv-Zl7Y4SgD2Wxx_yUuI2LmxlPK5CSQH67tG_qi6bc1iQ6_CeNDP1-s2XQfdSbIio4GN7VL8q49KwrEB_e5j28F9/s16000/Binary.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;
    L&#39;application est traduite en binaire ! Bon, pas sûre que ça soit utile vu
    que ce sont des IA qui m&#39;ont aidé en premier lieu à passer du français au
    binaire, mais au moins comme ça elles se sentent incluses et on évite
    peut-être une potentielle guerre, enfin je sais pas...
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans cet article, je vous propose de tout découvrir sur la fabrication de
  cette carte : de la préparation des données au développement de l&#39;application
  en passant par le choix de la symbologie. Rassurez-vous si vous n&#39;avez pas
  l&#39;âme d&#39;un développeur, beaucoup de choses sont accessibles sans code ! Et si
  c&#39;est seulement le code qui vous intéresse, n&#39;hésitez pas à utiliser
  &lt;a href=&quot;https://esrifrance.maps.arcgis.com/home/item.html?id=d865e8a38ca446798f2a1da1dc9aba5f&quot; target=&quot;_blank&quot;&gt;la carte déjà paramétrée&lt;/a&gt;.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Préparation des données&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Bon, vous vous doutez que je n&#39;ai pas pu trouver la donnée telle quelle se
  baladant sur internet. Pour partir de données existantes, j&#39;ai récupéré le
  &lt;a href=&quot;https://data.humdata.org/dataset/kontur-population-dataset-22km&quot; target=&quot;_blank&quot;&gt;Kontur Population Dataset de 2023&lt;/a&gt;
  (que nous avions déjà utilisé dans
  &lt;a href=&quot;https://www.codethemap.fr/2023/02/un-mardi-une-appli-23-utiliser-des-gros.html&quot; target=&quot;_blank&quot;&gt;cette application&lt;/a&gt;), agrégeant les données de population mondiale dans des
  &lt;a href=&quot;https://h3geo.org/&quot; target=&quot;_blank&quot;&gt;hexagones H3&lt;/a&gt; de 22km
  (d&#39;autres résolutions sont disponibles mais celle-ci sera suffisante pour
  notre application).
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQc8NYo216feD0N4Uww7n60yl_gtMThQEOAPH4A5wLRpGSPaWpoPYa35SwjC08AdAemdXbyhnuPxLI1Go1KvOhig4N_Wx0ap1J2FxNpivYoZg_Xth2sxZVZBIUzEQNPvObdHl3Y9EOvfpAX0QepsaSxe5HbUC2bcqokFgTGSx6ShlZnKf2ExYQE0we7INT/s987/Kontur.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;680&quot; data-original-width=&quot;987&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQc8NYo216feD0N4Uww7n60yl_gtMThQEOAPH4A5wLRpGSPaWpoPYa35SwjC08AdAemdXbyhnuPxLI1Go1KvOhig4N_Wx0ap1J2FxNpivYoZg_Xth2sxZVZBIUzEQNPvObdHl3Y9EOvfpAX0QepsaSxe5HbUC2bcqokFgTGSx6ShlZnKf2ExYQE0we7INT/s16000/Kontur.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Maintenant, il faut transformer cette donnée en points.&amp;nbsp;Pour passer des
  hexagones de population à des entités ponctuelles plus faciles à manipuler,
  nous allons avoir besoin d&#39;un petit script Python, utilisant notamment
  &lt;a href=&quot;https://pro.arcgis.com/fr/pro-app/latest/arcpy/get-started/what-is-arcpy-.htm&quot; target=&quot;_blank&quot;&gt;ArcPy&lt;/a&gt;. Si vous ne voulez pas avoir à utiliser ce script vous-même, vous pouvez
  accéder directement à
  &lt;a href=&quot;https://esrifrance.maps.arcgis.com/home/item.html?id=319cd170a0b3460bb355f88b13c6aed3&quot; target=&quot;_blank&quot;&gt;la donnée transformée que j&#39;ai partagée publiquement&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le script, que vous pouvez
  &lt;a href=&quot;https://github.com/JapaLenos/Python-in-ArcGIS/blob/main/Analysis/kontur-population-to-points.py&quot; target=&quot;_blank&quot;&gt;retrouver intégralement sur mon Github&lt;/a&gt;,&amp;nbsp;parcourt chaque hexagone du Kontur Population Dataset&amp;nbsp;et, selon
  le nombre d’habitants, génère un ou plusieurs points placés aléatoirement à
  l’intérieur de celui-ci. Chaque point est possède une pondération qui nous
  permettra de faire varier la taille de celui-ci en fonction du nombre
  d&#39;habitants qu&#39;il représente : de 250 à 500k habitants, la pondération est de
  1 ; de 500k à 1M, la pondération est de 2, et pour plus d&#39;1M, la pondération
  est de 3. Un hexagone contenant 750k habitants engendrera donc la création de
  2 points : un avec une pondération de 2 pour 500k habitants et un avec une
  pondération de 1 pour 250k habitants.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Une fois tous les points créés, une seconde partie du script attribue à chacun
  une “espèce” : Humain, IA ou Hybride. La répartition suit des proportions
  globales (50 % d’humains, 30 % d’IA, 20 % d’hybrides) que j&#39;ai choisies
  arbitrairement (et que vous pouvez facilement modifier dans le script), mais
  avec des regroupements géographiques pour éviter un mélange totalement
  aléatoire. Certaines zones seront donc plutôt dominées par les IA, d’autres
  plus par les humains, tout en gardant un peu de diversité locale, pour
  refléter les regroupements communautaires qui s&#39;observent assez naturellement
  dans la répartition des populations.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXKE1pzFfs47Bb2cKBmgAouUhKip0xufEyFLHC4rBtlL1UEBaWW5GoU6CAvgkIt_OV3WwgQ1UT7yoajhPw6YaSNU75tna97X9wi_jY4vJi8JnBXXDeGDmUe0MdcbUmfVzIDJ_ACPEkWLmDsa9OEiZRv1_enu-w3tlWDOxreeJfUtD39wrGaxI_BCsv8KbM/s1592/pro-final.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;823&quot; data-original-width=&quot;1592&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXKE1pzFfs47Bb2cKBmgAouUhKip0xufEyFLHC4rBtlL1UEBaWW5GoU6CAvgkIt_OV3WwgQ1UT7yoajhPw6YaSNU75tna97X9wi_jY4vJi8JnBXXDeGDmUe0MdcbUmfVzIDJ_ACPEkWLmDsa9OEiZRv1_enu-w3tlWDOxreeJfUtD39wrGaxI_BCsv8KbM/s16000/pro-final.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La donnée est ensuite prête à être publiée sur le portail, et nous nous
  retrouvons dans le MapViewer pour la suite.&amp;nbsp;&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Modification de la symbologie&lt;/span&gt;
&lt;/h3&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Fond de carte&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Nous allons commencer par modifier le fond de carte, ce qui nous permettra de
  mieux faire ressortir nos points. Vu qu&#39;aucun des fonds de carte proposés par
  défaut ne me convenait totalement, j&#39;ai utilisé le
  &lt;a href=&quot;https://www.codethemap.fr/2025/10/arcgis-vector-tile-style-editor.html&quot; target=&quot;_blank&quot;&gt;Vector Tile Style Editor&lt;/a&gt;
  pour créer une version plus sombre et sans étiquette du fond de carte
  Nova.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOTqya6ZJ4bKcbC-fwNZYIoWRot277eJJ1qa_ZCdACBVS6MqdZyigNuXtSanCQ50hsrlI1NGx7hz56YhgqMn7UglyJVRpS8FQHjIk_mRby5s1hIZEPYXIxiuFGqPhLhQNqV4i5Y1zQCwLAb4eAmOfHGpuqW3vi-imc4iVbRa_zO-8uQs3R6JlrzTK1eRfK/s1913/VTSE.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;938&quot; data-original-width=&quot;1913&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOTqya6ZJ4bKcbC-fwNZYIoWRot277eJJ1qa_ZCdACBVS6MqdZyigNuXtSanCQ50hsrlI1NGx7hz56YhgqMn7UglyJVRpS8FQHjIk_mRby5s1hIZEPYXIxiuFGqPhLhQNqV4i5Y1zQCwLAb4eAmOfHGpuqW3vi-imc4iVbRa_zO-8uQs3R6JlrzTK1eRfK/s16000/VTSE.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Vous pouvez le créer vous-même dans le style que vous voulez, ou vous servir
  de
  &lt;a href=&quot;https://esrifrance.maps.arcgis.com/home/item.html?id=d2341719c9524182a40ed092e08c45d5&quot; target=&quot;_blank&quot;&gt;celui que j&#39;ai partagé&lt;/a&gt;.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Symbologie des points&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour la symbologie des points, nous allons nous baser sur deux attributs et
  faire varier à la fois la couleur et la taille. Ajoutez donc &quot;espece&quot; et
  &quot;pondération&quot; dans le choix dans attributs du style de la couche et
  sélectionnez &quot;Types et tailles&quot; pour le style.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0oUJkQi4ma0Irhanx_rDOZ9emzNWzqxpZfW27x0gSpOJ71XIddThxNG2sQ1eK-YoEMhCS45MPAkKAzQVzB1yks9fgwlj0SzfFkYwpUwQXEAxJBwVtGXjN9VwQuU2NNZ2tnasrgy4YVryKGWHPKsqOYEZoiXI_7b9GTfaFwMslcgeukaco-QcllGhiVw7o/s541/styles1.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;541&quot; data-original-width=&quot;377&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0oUJkQi4ma0Irhanx_rDOZ9emzNWzqxpZfW27x0gSpOJ71XIddThxNG2sQ1eK-YoEMhCS45MPAkKAzQVzB1yks9fgwlj0SzfFkYwpUwQXEAxJBwVtGXjN9VwQuU2NNZ2tnasrgy4YVryKGWHPKsqOYEZoiXI_7b9GTfaFwMslcgeukaco-QcllGhiVw7o/s16000/styles1.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Pour les types, choisissez la palette de couleur de votre choix pour
  représenter chacune des espèces, voici ce que j&#39;ai fait de mon côté :&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpAWM9ioyRPL-L_TlVVlDTaH7ggacp4mBSpNeRg8s43YUqjYnDm_JJtPHCa9JjnUevTpBo-FViPjBFwWl3GJwSoIrNCnm3W6wnis1892yqeB7BzpYnGd-wyzT1aB29EAlM2egLfpLqzZLl4WmP32YEg-1kYjP5dNeFlGmkqKXEenWXMfcJVRb8pmPlX7z6/s727/couleurs.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;707&quot; data-original-width=&quot;727&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpAWM9ioyRPL-L_TlVVlDTaH7ggacp4mBSpNeRg8s43YUqjYnDm_JJtPHCa9JjnUevTpBo-FViPjBFwWl3GJwSoIrNCnm3W6wnis1892yqeB7BzpYnGd-wyzT1aB29EAlM2egLfpLqzZLl4WmP32YEg-1kYjP5dNeFlGmkqKXEenWXMfcJVRb8pmPlX7z6/s16000/couleurs.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Pour les totaux et quantités, choisissez la plage des tailles qui vous
  convient. J&#39;ai essayé de garder des points relativement petits de mon côté
  pour essayer de ne pas surcharger la carte.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjI00cC5U39hxvARL6sRaoZuqy0WfpW4RggfDJpuEnnNAE7FWHOEzUomT5rtVN29gX_yxwi-0I9W_C_-pdXqqnVOnOeY3RWVJvz72d7rSe78Lp7IDBM56M6JsNZn5jkMKaCdZd-cjXlXr8axs6ykt4vgmsV5JbygZsNMq3MY6b8dgR2tFEeB4MCfG0o9l7N/s765/taille.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;765&quot; data-original-width=&quot;382&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjI00cC5U39hxvARL6sRaoZuqy0WfpW4RggfDJpuEnnNAE7FWHOEzUomT5rtVN29gX_yxwi-0I9W_C_-pdXqqnVOnOeY3RWVJvz72d7rSe78Lp7IDBM56M6JsNZn5jkMKaCdZd-cjXlXr8axs6ykt4vgmsV5JbygZsNMq3MY6b8dgR2tFEeB4MCfG0o9l7N/s16000/taille.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;
    C&#39;est l&#39;heure des effets🪄 J&#39;ai été suspicieusement sage sur ces derniers,
    car les points étant très nombreux, trop d&#39;effets rendaient un peu trop vite
    la carte quelque peu... aveuglante. Nous nous contenterons donc d&#39;un effet
    &quot;Luminosité et contraste&quot; pour apporter un peu de brillance à nos points.
  &lt;/div&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcGIbja96q76Q8OAZzbxp1Tp31tnrqx0tBvZD9BaWAYAkXUxGqBx1gSYi5dILTg5-yCqCsT-gW2KxBTPriZ_sQaV0CWjmeNqkrZ9L582IpRaQkroU9SZi0PD6a8NKX_3Utw6UKKvJu81LqTeUZEVhWMDkr_J-alzPQdyE7q8uV43UHxn99RinVr-3NXFzf/s748/Lum_cont.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;403&quot; data-original-width=&quot;748&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcGIbja96q76Q8OAZzbxp1Tp31tnrqx0tBvZD9BaWAYAkXUxGqBx1gSYi5dILTg5-yCqCsT-gW2KxBTPriZ_sQaV0CWjmeNqkrZ9L582IpRaQkroU9SZi0PD6a8NKX_3Utw6UKKvJu81LqTeUZEVhWMDkr_J-alzPQdyE7q8uV43UHxn99RinVr-3NXFzf/s16000/Lum_cont.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Voilà le résultat pour la couche de points :&amp;nbsp;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaXzaWLGNusoJG2MTz6-ObzeD_r72DpCg2W6SdNhszXzCtEAF1tM76SFVxbeAQee-N8k1XUsXtLbfAETFzdShsPB535abY9fgpdHFwFq3AGF0eJwiO-KoZqwX2Q40Vl7q0Y71AYTM6qurtBt9xUokZPOac28CxtCfdM-en7dsEYoSX7C7i8LzUGcdn0YHQ/s1795/points.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;768&quot; data-original-width=&quot;1795&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaXzaWLGNusoJG2MTz6-ObzeD_r72DpCg2W6SdNhszXzCtEAF1tM76SFVxbeAQee-N8k1XUsXtLbfAETFzdShsPB535abY9fgpdHFwFq3AGF0eJwiO-KoZqwX2Q40Vl7q0Y71AYTM6qurtBt9xUokZPOac28CxtCfdM-en7dsEYoSX7C7i8LzUGcdn0YHQ/s16000/points.jpg&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;Flux marin (optionnel)&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour rendre la carte un peu plus chouette, nous allons rajouter une donnée de
  flux marin. Nous n&#39;en avons pas vraiment besoin pour l&#39;histoire de la carte,
  mais elle apporte une esthétique forte et permet aussi de créer un peu la
  dimension futuriste dont j&#39;avais besoin.&amp;nbsp;&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Nous allons utiliser comme source de donnée la couche
  &lt;a href=&quot;https://www.arcgis.com/home/item.html?id=a6f2ca97544b45f69daea38668ccbdcf&quot; target=&quot;_blank&quot;&gt;HYCOM - Ocean Current Vectors&lt;/a&gt;. Ce service de d&#39;imagerie&amp;nbsp;de type Vector-MagDir,&amp;nbsp;issu des données
  de courants marins de l&#39;&lt;a href=&quot;https://www.hycom.org/&quot; target=&quot;_blank&quot;&gt;HYCOM&lt;/a&gt;,&amp;nbsp; va nous permette d&#39;utiliser une symbologie de type flux pour habiller
  les océans.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;i&gt;[Note] Cette couche nécessite un compte d&#39;organisation ArcGIS Online pour y
    accéder, donc passez cette étape si vous êtes sur ArcGIS Enterprise. De la
    même manière, je vous invité à la tester dans le Map Viewer pour extraire de
    beaux visuels, mais l&#39;utiliser dans votre application entraînera l&#39;ajout
    d&#39;une fenêtre d&#39;authentification pour que vos utilisateurs puissent s&#39;y
    connecter, donc je ne vous conseille pas de la garder pour la partie
    &quot;Intégration&quot;.&lt;/i&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Une fois la couche ajoutée à votre carte, choisissez le style &quot;Flux&quot; pour la
  symbologie de la couche pour voir apparaître le flux.&amp;nbsp;&lt;br /&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgYyf9LYNBZf3pCCbnIGYZHH33mO6hE_fMzX_Dad6n8Ub62-cjReJoXzDOnVh8SXuW7Q3fr_FjUkViI0lzrp1viT1jcTybU6rgkSKfGj5fC-_uz6Np-H1B7fUCSOExzzH_O7sVYbic0Zxt9pCvO33_k6__E4uqx_4EeJIojvLr3JY7yIZS0Cm_t2_A5FTi/s1117/flux1.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;700&quot; data-original-width=&quot;1117&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgYyf9LYNBZf3pCCbnIGYZHH33mO6hE_fMzX_Dad6n8Ub62-cjReJoXzDOnVh8SXuW7Q3fr_FjUkViI0lzrp1viT1jcTybU6rgkSKfGj5fC-_uz6Np-H1B7fUCSOExzzH_O7sVYbic0Zxt9pCvO33_k6__E4uqx_4EeJIojvLr3JY7yIZS0Cm_t2_A5FTi/s16000/flux1.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Stylé, mais on va rendre ça un peu plus discret pour ne pas voler la vedette à
  nos points.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans les options de style, poussez la vitesse, la densité et la longueur au
  max histoire d&#39;être un peu dynamique.&amp;nbsp;&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkaFYhRwEwzMCrcnSqcKCaB1bA2Qz-QZB3fkjq3IbMbOUhDy3Q3C4Zl6BurRd2UjwRy71cqsyi0Uhk2rl0tkIUtWHnOljNkHjkJhJU2MmzcWl5s5OBeMcr5Wo5Yd3zgBg50YBn2ujfyqHmKoz7E2IYAWhfWikWeA4YBiQBN2Hyy75BqEuU41_XzNf4rIIO/s1117/max.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;518&quot; data-original-width=&quot;1117&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkaFYhRwEwzMCrcnSqcKCaB1bA2Qz-QZB3fkjq3IbMbOUhDy3Q3C4Zl6BurRd2UjwRy71cqsyi0Uhk2rl0tkIUtWHnOljNkHjkJhJU2MmzcWl5s5OBeMcr5Wo5Yd3zgBg50YBn2ujfyqHmKoz7E2IYAWhfWikWeA4YBiQBN2Hyy75BqEuU41_XzNf4rIIO/s16000/max.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Ensuite, choisissez &quot;dégradé de couleur&quot;. Vous pouvez choisir plusieurs
  teintes pour tester, mais voici les paramètres que j&#39;ai choisis pour que le
  flux reste relativement discret :&amp;nbsp;&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcGFMPnEpgWqMBuRcJJX6Bm_9UnuC7agy5-jBMmBocQ9NUS6gaNiB8rA37cV9O_ZXBxKB5Pt4xvfWwoOfDFE4LouiU_WA8lbaHBt7QkfkE4Fsk9O2P6yyBFqkaopvcHEoCyrtbi7XJ1ht_oorNEzKJiTmEvWW4g3vWVlqKykRcTHrKOrbZ9-Tric4vff_4/s1128/flux_fini.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;695&quot; data-original-width=&quot;1128&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcGFMPnEpgWqMBuRcJJX6Bm_9UnuC7agy5-jBMmBocQ9NUS6gaNiB8rA37cV9O_ZXBxKB5Pt4xvfWwoOfDFE4LouiU_WA8lbaHBt7QkfkE4Fsk9O2P6yyBFqkaopvcHEoCyrtbi7XJ1ht_oorNEzKJiTmEvWW4g3vWVlqKykRcTHrKOrbZ9-Tric4vff_4/s16000/flux_fini.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  En termes d&#39;effets, le Néon est activé par défaut, rien à modifier de ce côté
  là ! Et voilà, la carte est prête :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;
    &lt;img border=&quot;0&quot; data-original-height=&quot;858&quot; data-original-width=&quot;1856&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDAt-6O9o1W-ye8B0kCEf0UzmUDbQWNHaQobrrJumI-LzSBzqLcvdLe4088Sar3zkannESPkhySQJ78Tb7BmVtmAwjUxp7vWUGCfWS0iAuzn0AO6rr1Z2hOjbQ-9lg7woYtIhry6VL6vug0oQlXT5hdQrZJkmyZIWPIWjlGibyrSuJIJkezARQ6kfnWMxL/s16000/carte1_avantint%C3%A9gration.gif&quot; /&gt;On passe à l&#39;intégration ?&amp;nbsp;
  &lt;/div&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Développement d&#39;une petite application&amp;nbsp;&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Si vous avez lu
  &lt;a href=&quot;https://www.codethemap.fr/2025/03/carto-web-no-code-low-code-arcgis.html&quot; target=&quot;_blank&quot;&gt;cette série d&#39;articles&lt;/a&gt;, vous savez que grâce à toute cette préparation dans le Map Viewer, intégrer
  cette carte va être très simple et rapide en utilisant le
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/&quot; target=&quot;_blank&quot;&gt;SDK JavaScript d&#39;ArcGIS&lt;/a&gt;. Nous intégrerons ensuite des comportements personnalisés, notamment pour la
  traduction de l&#39;application en langage binaire pour nos amies les IA.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comme à chaque fois, retrouvez le code complet
  &lt;a href=&quot;https://github.com/JapaLenos/JS-API/tree/main/2125-30DayMapChallenge&quot; target=&quot;_blank&quot;&gt;sur mon Github&lt;/a&gt;
  ou en mode bac à sable
  &lt;a href=&quot;https://codepen.io/japalenos/pen/PwNwGeg?editors=1100&quot;&gt;dans CodePen&lt;/a&gt;.&amp;nbsp;&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  J&#39;intègre la carte comme d&#39;habitude grâce au composant &amp;lt;arcgis-map&amp;gt; et à
  l&#39;itemid de la webmap :&amp;nbsp;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt; &amp;lt;arcgis-map item-id=&quot;d865e8a38ca446798f2a1da1dc9aba5f&quot;&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;Je rajoute également la légende et un bouton d&#39;informations, ainsi qu&#39;un
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/switch/&quot; target=&quot;_blank&quot;&gt;bouton switch&lt;/a&gt;
  du
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/&quot; target=&quot;_blank&quot;&gt;Calcite Design System&lt;/a&gt;
  qui nous permettra de passer en &quot;mode IA&quot; :&amp;nbsp;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-map item-id=&quot;d865e8a38ca446798f2a1da1dc9aba5f&quot; theme=&quot;dark&quot;&amp;gt;
  &amp;lt;arcgis-expand slot=&quot;bottom-right&quot; expand-tooltip=&quot;+ d&#39;infos&quot; collapse-tooltip=&quot;Fermer&quot; expand-icon=&quot;information&quot;&amp;gt;
    &amp;lt;div class=&quot;expand-content&quot; style=&quot;padding:1em; max-width:250px;&quot;&amp;gt;
      &amp;lt;h4 style=&quot;font-weight: bold; padding-top : 0%; margin-top: 0%&quot;&amp;gt;À propos de l&#39;application&amp;lt;/h4&amp;gt;
      &amp;lt;p&amp;gt;En 2125, le monde est partagé entre des populations humaines, IA et hybrides. La répartition de ces populations est représentée sur cette carte.&amp;lt;/p&amp;gt;
      &amp;lt;p&amp;gt;Les données ont été extrapolées à partir du &amp;lt;a href=&quot;https://data.humdata.org/dataset/kontur-population-dataset-22km&quot; target=&quot;_blank&quot;&amp;gt;Kontur Population Dataset de 2023&amp;lt;/a&amp;gt;.&amp;lt;/p&amp;gt;
      &amp;lt;p&amp;gt;Retrouvez toutes les étapes de création de l&#39;application dans &amp;lt;a href=&quot;https://www.codethemap.fr/2025/11/carte-population-2125.html&quot; target=&quot;_blank&quot;&amp;gt;cet article CodeTheMap&amp;lt;/a&amp;gt;, et toutes mes autres apps sur Github &amp;lt;b&amp;gt;@&amp;lt;a href=&quot;https://github.com/JapaLenos&quot; target=&quot;_blank&quot;&amp;gt;JapaLenos&amp;lt;/a&amp;gt;&amp;lt;/b&amp;gt;.&amp;lt;/p&amp;gt;
      &amp;lt;p&amp;gt;Cette carte a été créée à l&#39;occasion du &amp;lt;b&amp;gt;&amp;lt;a href=&quot;https://30daymapchallenge.com/&quot; target=&quot;_blank&quot;&amp;gt;#30DayMapChallenge&amp;lt;/a&amp;gt; - Jour 12 : &quot;A Map from 2125&quot;&amp;lt;/b&amp;gt;&amp;lt;/p&amp;gt;
    &amp;lt;/div&amp;gt;
  &amp;lt;/arcgis-expand&amp;gt;

  &amp;lt;arcgis-expand slot=&quot;bottom-right&quot; expand-tooltip=&quot;Légende&quot; collapse-tooltip=&quot;Fermer la légende&quot;&amp;gt;
    &amp;lt;arcgis-legend legend-style=&quot;classic&quot;&amp;gt;&amp;lt;/arcgis-legend&amp;gt;
  &amp;lt;/arcgis-expand&amp;gt;
&amp;lt;/arcgis-map&amp;gt;

&amp;lt;div id=&quot;switch-container&quot;&amp;gt;
  &amp;lt;h4&amp;gt;
    &amp;lt;calcite-switch id=&quot;switchbutton&quot; unchecked&amp;gt;&amp;lt;/calcite-switch&amp;gt;
    01101101 01101111 01100100 01100101 00100000 01001001 01000001
  &amp;lt;/h4&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Peu de choses à dire sur le script, qui attend classiquement que la carte et
  la vue soient prêtes avant d&#39;interagir avec les données. Le morceaux principal
  gère la traduction du texte en binaire pour le mode IA :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;function textToBinaryASCII(str) {
  return str
    .split(&quot;&quot;)
    .map(c =&amp;gt; c.charCodeAt(0).toString(2).padStart(8, &quot;0&quot;))
    .join(&quot; &quot;);
}

function numberToBinary(num) {
  return parseInt(num, 10).toString(2);
}

const switchButton = document.getElementById(&quot;switchbutton&quot;);
const switchTextNode = switchButton.nextSibling;
const h1Node = document.querySelector(&quot;.titre h1&quot;);
const h3Node = document.querySelector(&quot;.titre h3&quot;);

h1Node.setAttribute(&quot;data-original&quot;, h1Node.textContent);
h3Node.setAttribute(&quot;data-original&quot;, h3Node.textContent);

switchButton.addEventListener(&quot;calciteSwitchChange&quot;, (event) =&amp;gt; {
  const binaryMode = event.target.checked;
  h1Node.textContent = binaryMode
    ? numberToBinary(h1Node.getAttribute(&quot;data-original&quot;))
    : h1Node.getAttribute(&quot;data-original&quot;);
  h3Node.textContent = binaryMode
    ? textToBinaryASCII(h3Node.getAttribute(&quot;data-original&quot;))
    : h3Node.getAttribute(&quot;data-original&quot;);
  switchTextNode.nodeValue = binaryMode
    ? &quot; Revenir au mode humain&quot;
    : &quot; 01101101 01101111 01100100 01100101 00100000 01001001 01000001&quot;; // mode IA
});&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Côté CSS, un assez gros travail de modification des règles du Calcite Design
  System pour que l&#39;UI de notre app colle totalement au style de la carte :
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-css&quot;&gt;calcite-shell {
  position: relative;
  --calcite-color-brand: #3fffff;
  --calcite-color-brand-hover: #efffff;
  --calcite-color-border-input: #0a3c5e;
  --calcite-color-foreground-1: #062336;
  --calcite-color-foreground-2: #020817;
  --calcite-color-foreground-current: #020817;
  --calcite-color-text-1: #efffff;
  --calcite-color-text-2: #efffff;
  --calcite-color-text-3: #efffff;
  --calcite-color-border-3: #020817;
  --calcite-color-transparent-tint: rgba(2, 8, 23, 0.7);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;Et voilà le résultat final (&lt;a href=&quot;https://japalenos.github.io/JS-API/2125-30DayMapChallenge/&quot; target=&quot;_blank&quot;&gt;à consulter ici en plein écran&lt;/a&gt;) :&lt;/div&gt;&lt;iframe height=&quot;700&quot; id=&quot;inlineFrameExample&quot; src=&quot;https://japalenos.github.io/JS-API/2125-30DayMapChallenge/&quot; title=&quot;2125&quot; width=&quot;100%&quot;&gt;&lt;/iframe&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Vous en voulez plus ? N&#39;hésitez pas à consulter ce que j&#39;avais fait l&#39;an
  dernier pour le 30DayMapChallenge (&lt;a href=&quot;https://www.codethemap.fr/2024/11/30-day-map-challenge-hexagons.html&quot; target=&quot;_blank&quot;&gt;Hexagones&lt;/a&gt;
  ;
  &lt;a href=&quot;https://www.codethemap.fr/2024/11/30-day-map-challenge-space-and-time.html&quot; target=&quot;_blank&quot;&gt;Temps et Espace&lt;/a&gt;
  et
  &lt;a href=&quot;https://www.codethemap.fr/2024/11/30-day-map-challenge-my-data.html&quot; target=&quot;_blank&quot;&gt;Mes Données&lt;/a&gt;). Vous pouvez également consulter tous les articles du blog proposant des
  tutoriels pour prendre en main les technologies de développement
  d&#39;ArcGIS.&amp;nbsp;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/11/carte-population-2125.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRzIXamIkNkAIFq9eITs3bl1CWiy2IX-QMttKroEvGaXHGXa-yulnXyIJuhXAUDO0oWh_iPOcYR94VOb9-ITBf3kSxOojtoYc1TASoE32gb_vDqk61iqAID4lPkcwTV8HCAVAXUp1dD4Xa6x-uHeTFC33Wbs3aY11uQUAAQq9vbryylbLSdrINkcGJpe4_/s72-c/minia_2125-min.gif" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-7148378408522058658</guid><pubDate>Mon, 03 Nov 2025 08:06:00 +0000</pubDate><atom:updated>2025-11-03T09:06:00.107+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Basemap</category><category domain="http://www.blogger.com/atom/ns#">Général</category><category domain="http://www.blogger.com/atom/ns#">tutoriel</category><title>Comment personnaliser une basemap dans ArcGIS ? (Découverte du Vector Tile Style Editor)</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img
    src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifHbCjWrkIVZM0CnfuUAa2DzUZe0lk8iy-CNmn412pVM8z6G5_sFSS9wQVHBdbZWRHaD3A1ZDVX_RTpNy01I9mQrjbQ94EvqlZxbLh6KHYH61VEkd_lNO8HoR-TMrZZ5e_w2eJIIfXPp3U0wSS2-wTbc9cneTlAh5T-OvW5sb8bsH2lkqQVoFkriMNxeBL/s16000/synthwave_minia_compr-min.png&quot;
    style=&quot;display: none;&quot;
  /&gt;
&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  ArcGIS possède
  &lt;a href=&quot;https://developers.arcgis.com/rest/basemap-styles/&quot; target=&quot;_blank&quot;
    &gt;un très grand catalogue de fonds de carte&lt;/a
  &gt;
  servant de contexte pour vos données dans vos applications
  cartographiques.&amp;nbsp;Pour une application que vous verrez très bientôt, j&#39;ai
  besoin d&#39;un fond de carte futuriste. Le fond de carte Nova correspond pas mal
  à ce que je recherche, mais j&#39;aimerais y ajouter un twist dans un style rétro
  80 (ou, pour les connaisseurs une &quot;esthétique synthwave&quot;). Vous voyez de quoi
  je parle ? Le violet, le bleu, le jaune, le rose, les néons,
  &lt;a
    href=&quot;https://www.youtube.com/watch?v=AQpRN98ID7w&amp;amp;list=RDAQpRN98ID7w&amp;amp;start_radio=1&quot;
    target=&quot;_blank&quot;
    &gt;ce genre de musique&lt;/a
  &gt;... Parfait.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifHbCjWrkIVZM0CnfuUAa2DzUZe0lk8iy-CNmn412pVM8z6G5_sFSS9wQVHBdbZWRHaD3A1ZDVX_RTpNy01I9mQrjbQ94EvqlZxbLh6KHYH61VEkd_lNO8HoR-TMrZZ5e_w2eJIIfXPp3U0wSS2-wTbc9cneTlAh5T-OvW5sb8bsH2lkqQVoFkriMNxeBL/s1000/synthwave_minia_compr-min.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;display: none;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;566&quot;
        data-original-width=&quot;1000&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifHbCjWrkIVZM0CnfuUAa2DzUZe0lk8iy-CNmn412pVM8z6G5_sFSS9wQVHBdbZWRHaD3A1ZDVX_RTpNy01I9mQrjbQ94EvqlZxbLh6KHYH61VEkd_lNO8HoR-TMrZZ5e_w2eJIIfXPp3U0wSS2-wTbc9cneTlAh5T-OvW5sb8bsH2lkqQVoFkriMNxeBL/s16000/synthwave_minia_compr-min.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Esri met à disposition l&#39;outil parfait pour mon besoin : l&#39;&lt;a
    href=&quot;https://www.google.com/url?sa=t&amp;amp;source=web&amp;amp;rct=j&amp;amp;opi=89978449&amp;amp;url=https://www.arcgis.com/apps/vtseditor/fr/index.html&amp;amp;ved=2ahUKEwjkveytxMuQAxUcTKQEHajHGksQFnoECBkQAQ&amp;amp;usg=AOvVaw1HeFR8uuIn6R-I1GoHtFOT&quot;
    target=&quot;_blank&quot;
    &gt;ArcGIS Vector Tile Style Editor&lt;/a
  &gt;. Dans cet article, je vous propose de découvrir ensemble cette application
  indispensable pour personnaliser vos basemaps.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Qu&#39;est-ce que l&#39;ArcGIS Vector Tile Style Editor ?&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Derrière ce nom à rallonge se cache une application qui vous permet de
  personnaliser les fonds de carte vectoriels d&#39;Esri. Accessible avec un compte
  ArcGIS Online, Enterprise ou Dev, vous pouvez vous en servir pour modifier les
  couleurs, les motifs, la taille et les polices d&#39;écriture des
  étiquettes...&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En vous connectant, vous verrez toutes les basemaps déjà personnalisées de
  votre org apparaître. Pour commencer, cliquez sur &quot;Nouveau style&quot; en haut à
  droite, puis sélectionnez la basemap que vous souhaitez personnaliser.
  Evidemment, plus le style d&#39;origine se rapproche de ce que vous voulez
  obtenir, plus ça sera simple par la suite. Pour ma part, je choisis donc Nova.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgt-ue3ryPKmpT_c02HMUYjb0OUfi_5PtYIf3kkHqWaxTT0TegLzoMZi3i9SifjgPaV6R5kayhl9NO-oRVYvjXwG7epF-LvTyZBQFO2oj7aBr0Cy1OSsS6CqG62dcBd0xK2nQpmYv4JqWuKFbuy_Oy24-TdrBkx230i2_223d8_N8fcUCawTarppUiDkzE3/s1890/nova.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1020&quot;
        data-original-width=&quot;1890&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgt-ue3ryPKmpT_c02HMUYjb0OUfi_5PtYIf3kkHqWaxTT0TegLzoMZi3i9SifjgPaV6R5kayhl9NO-oRVYvjXwG7epF-LvTyZBQFO2oj7aBr0Cy1OSsS6CqG62dcBd0xK2nQpmYv4JqWuKFbuy_Oy24-TdrBkx230i2_223d8_N8fcUCawTarppUiDkzE3/s16000/nova.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Avant d&#39;aller plus loin, il nous faut une idée claire de ce que l&#39;on
  souhaiterait obtenir. Je vous propose donc de sortir quelques minutes de l&#39;app
  pour ce qui arrive.&amp;nbsp;&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Le Moodboard&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Ah oui, mon étape préférée ! Elle n&#39;est pas obligatoire, mais si comme moi
  vous avez passé votre adolescence à chercher des &quot;aesthetics&quot; sur Pinterest,
  vous savez à quel point c&#39;est satisfaisant. Pour chacune de mes apps, j&#39;essaye
  de collecter des références que je compile sur un tableau. J&#39;en extrait
  ensuite une palette de couleur, dont je pourrai me resservir directement pour
  ma basemap, la symbologie et les éléments d&#39;interface utilisateur de
  l&#39;application. Voici par exemple mon ✨moodboard✨ pour l&#39;esthétique synthwave
  :
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFp95WimwlOOAkHGuOO1ois7pOES8TdtWbIwW0jEdNCQUyYVUUuwKOZGYzCbOGYQp5PnIVagnFpxkGB2H6qeiipij9ShRdLCc4NljBCTXMI2GhcsH_iWi4VvfqTapYbq1waaa55QAeFJCz8_iEV60LjAb5umDtDzpb__ubk4ryVYwbhap0n1lMAmjw7WGT/s800/moodboard_synthwave_reds-min.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;481&quot;
        data-original-width=&quot;800&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFp95WimwlOOAkHGuOO1ois7pOES8TdtWbIwW0jEdNCQUyYVUUuwKOZGYzCbOGYQp5PnIVagnFpxkGB2H6qeiipij9ShRdLCc4NljBCTXMI2GhcsH_iWi4VvfqTapYbq1waaa55QAeFJCz8_iEV60LjAb5umDtDzpb__ubk4ryVYwbhap0n1lMAmjw7WGT/s16000/moodboard_synthwave_reds-min.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Bon, il faut aimer le néon je vous l&#39;accorde (perso j&#39;adore). A nouveau, cette
  partie est facultative, mais je trouve qu&#39;elle fait gagner énormément de temps
  par la suite car elle évite d&#39;avancer à l&#39;aveugle dans le choix des couleurs.
  Si vous êtes sensibles à l&#39;esthétique globale de vos applications, je vous
  conseille de tester ! Pour ma part, je recherche des images directement dans
  mon navigateur ou alors sur Pinterest, et je crée mon tableau sur Powerpoint.
  Très simple donc à mettre en œuvre.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Mise à jour rapide&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Maintenant que nous savons où nous allons, il est temps de passer à la
  personnalisation de la carte. La mise à jour rapide vous permet de modifier
  très rapidement les palettes de couleurs des grandes catégories d&#39;occupation
  du sol. Sur la droite, vous voyez les modifications sur la carte à différentes
  échelles, ce qui vous permet de mieux vous rendre compte du résultat.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDNv-CZZK3ykoaIayYPgWjImsSoT5sszXbYg8HjnJmKKJrzhe0ZkOLjxz0esrkA_TkCGm8aUdIafyvxeWEtHcrGQ8xjEHXVJmK2NlXyN_g5bg8p5DYhQgJ-lJxqkV08Zn6KHXv361TzvdnGmbNX6CHDFjSqs0ODe3TVBbMf2dvnrkIE3uYc7ngsaho_jkM/s1912/vtse_1.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1025&quot;
        data-original-width=&quot;1912&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDNv-CZZK3ykoaIayYPgWjImsSoT5sszXbYg8HjnJmKKJrzhe0ZkOLjxz0esrkA_TkCGm8aUdIafyvxeWEtHcrGQ8xjEHXVJmK2NlXyN_g5bg8p5DYhQgJ-lJxqkV08Zn6KHXv361TzvdnGmbNX6CHDFjSqs0ODe3TVBbMf2dvnrkIE3uYc7ngsaho_jkM/s16000/vtse_1.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Je commence par modifier les couleurs selon la palette que j&#39;ai établie à la
  partie précédente. J&#39;active également l&#39;option &quot;Recolorier les icônes et les
  motifs&quot;. Cela va permettre à l&#39;application de recolorer automatiquement les
  motifs utilisés dans le fond de carte avec des couleurs de votre palette,
  comme par exemple dans le fond de carte Nova le quadrillage bleu superposé à
  la carte. Enfin, je modifie également la couleur et le halo des étiquettes et
  je choisis la police &quot;Avenir Next LT Pro Bold Italic&quot;.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivXYnLyhB80313GgTxfTSQXClAgRg7qQ-SPQw3SCl9t9UgpM7gVDOJE_okSu8z3hCX687Bf0j117ZEX9J41GS_H11F-FuurosMWPKauQVV1XRgF8SgF2dMOEwYxEcP_WgAFTO1TeY_EToolYNc9NPvbBVpYDad6oakSDhBdc2gXWKXGI6xO2KImOLSNnWJ/s1913/vtse_2.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1030&quot;
        data-original-width=&quot;1913&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivXYnLyhB80313GgTxfTSQXClAgRg7qQ-SPQw3SCl9t9UgpM7gVDOJE_okSu8z3hCX687Bf0j117ZEX9J41GS_H11F-FuurosMWPKauQVV1XRgF8SgF2dMOEwYxEcP_WgAFTO1TeY_EToolYNc9NPvbBVpYDad6oakSDhBdc2gXWKXGI6xO2KImOLSNnWJ/s16000/vtse_2.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;
    En descendant un peu, vous verrez qu&#39;il y a également une option &quot;Masquer
    toutes les étiquettes&quot;, qui peut être très utile si vous avez besoin d&#39;un
    fond de carte très épuré (dans le cas par exemple où l&#39;étiquetage de vos
    propres données prend beaucoup de place sur la carte).
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Mise à jour des styles de couche&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans le menu à gauche, vous pouvez sélectionner &quot;Mettre à jour les styles de
  couche&quot;. Ce mode de configuration vous permet de configurer beaucoup plus
  finement chacune des couches du fond de carte dans les détails. Par exemple,
  dans la catégorie &quot;Buildings&quot;, je vais modifier la couleur du contour (line)
  pour choisir un rose plus foncé qui rendra les bâtiments plus lisibles.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglv0OVAnlP3bh3fNMZvvdKxYuPx-PWI37gvYlwNjkWquAmkmgS-lKyItTPcOjFENxgEDEpHfsawEFbA1kQVWPZhXUNsvrmzZNc6g6YhMtUTvvDfabH2VmISMHMfCDjIXd7N3R4QFvca0-_ge37u3VsRIMHdPwnd_mXELD4HMHmeu-GeND7wY9M1q5l56Lh/s1918/vtse_3.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;968&quot;
        data-original-width=&quot;1918&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglv0OVAnlP3bh3fNMZvvdKxYuPx-PWI37gvYlwNjkWquAmkmgS-lKyItTPcOjFENxgEDEpHfsawEFbA1kQVWPZhXUNsvrmzZNc6g6YhMtUTvvDfabH2VmISMHMfCDjIXd7N3R4QFvca0-_ge37u3VsRIMHdPwnd_mXELD4HMHmeu-GeND7wY9M1q5l56Lh/s16000/vtse_3.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Pour les frontières (&quot;Boundaries&quot;), je vais modifier la symbologie des
  frontières entre pays par un motif. Je choisis le motif &quot;Ocean label&quot; qui est
  déjà existant pour le style Nova. Certains pourraient qualifier ce choix
  d&#39;hasardeux ou étrange, mais cela crée un effet pailleté sur les frontières
  qui me plait totalement pour coller à la direction artistique de cette
  carte.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR8POzhgZ45jDEXJTQCtaLCamUPCvrCbOMyyblWaCdVN5EVVz1rPIIe9am6itRKLV8tRoYXCuFk4VILovdJsOhPabXJfQkxGjuntxtLgKhbq4_PJdriXlaIz2KNL_onUgOBJyjLx8eofpt5GoRKuuob2wPqeoNJ5cSviSQ0uO1mrkDaNfXy_aDJw2IUi_f/s1919/vtse_4.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;973&quot;
        data-original-width=&quot;1919&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR8POzhgZ45jDEXJTQCtaLCamUPCvrCbOMyyblWaCdVN5EVVz1rPIIe9am6itRKLV8tRoYXCuFk4VILovdJsOhPabXJfQkxGjuntxtLgKhbq4_PJdriXlaIz2KNL_onUgOBJyjLx8eofpt5GoRKuuob2wPqeoNJ5cSviSQ0uO1mrkDaNfXy_aDJw2IUi_f/s16000/vtse_4.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Notez que si vous souhaitez modifier une couche en particulier mais que vous
  n&#39;arrivez pas à la retrouver dans l&#39;arborescence, cliquer sur celle-ci dans la
  carte vous permettra d&#39;y accéder directement.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Mise à jour des icônes et motifs&amp;nbsp;&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Juste avant, j&#39;ai utilisé un motif préexistant. Sachez que si nécessaire, vous
  pouvez ajouter vos propres motifs ou modifier la couleur des motifs existants
  dans l&#39;onglet &quot;Mettre à jour les icônes et motifs&quot;. Vous devrez enregistrer
  votre fond de carte personnalisé avant d&#39;effectuer des modifications de
  motifs.&amp;nbsp;&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhe6lklyoCaREidT9uS00-3RXAC4ZQkkP3UiCi9mRdSudhUjqgrpHg9Nd1k1mn9_kYaNB3Ws55sikhIJUOMgosI2Dhk7Zdu-8ET0VK6uZ0NyjZ9n164a8fhm8UBSWUPXrrgThdE6jSGu8-8XGFOC9WN1QMsqYmAtghIZ2MI9C6l3S5xr6-H4Ui3lBQmnot5/s1915/vtse_5.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;971&quot;
        data-original-width=&quot;1915&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhe6lklyoCaREidT9uS00-3RXAC4ZQkkP3UiCi9mRdSudhUjqgrpHg9Nd1k1mn9_kYaNB3Ws55sikhIJUOMgosI2Dhk7Zdu-8ET0VK6uZ0NyjZ9n164a8fhm8UBSWUPXrrgThdE6jSGu8-8XGFOC9WN1QMsqYmAtghIZ2MI9C6l3S5xr6-H4Ui3lBQmnot5/s16000/vtse_5.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Encore + d&#39;options&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  D&#39;autres options s&#39;offrent à vous : mettre à jour la palette de couleurs ou
  encore mettre à jour directement le JSON. N&#39;hésitez pas à tester plein de
  choses pour obtenir le fond de plan de vos rêves !
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Et ensuite ?&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Une fois enregistrée, votre fond de carte personnalisé apparaît en tant que
  Tile Layer sur votre portail.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ-ebP_1REInwAMtQkwA-8bq4HMs8nI9mf0Oau7A9pK29YCOnRTHsTeKJZ0OfZfqWU-kXmhXvfyJcqCBrEHmNQdmj6OQnvszuGOYM_Fbg61svaWj34zldUZBT7seICyo7pgxcMLyMl90aaybWZfo4pBFIEEd49MIU0VN8OwOq6PJHD_Wgxe4X_frA-acEf/s1919/vtse_6.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1016&quot;
        data-original-width=&quot;1919&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ-ebP_1REInwAMtQkwA-8bq4HMs8nI9mf0Oau7A9pK29YCOnRTHsTeKJZ0OfZfqWU-kXmhXvfyJcqCBrEHmNQdmj6OQnvszuGOYM_Fbg61svaWj34zldUZBT7seICyo7pgxcMLyMl90aaybWZfo4pBFIEEd49MIU0VN8OwOq6PJHD_Wgxe4X_frA-acEf/s16000/vtse_6.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Vous pouvez ensuite l&#39;utiliser comme fond de carte dans le MapViewer par
  exemple, puis ajouter vos données par-dessus comme avec n&#39;importe sur
  n&#39;importe quel fond de carte classique. Il sera consommable sans problème par
  les générateurs d&#39;applications comme Dashboard, Experience Builder etc. Vous
  pouvez aussi le consommer directement dans des applications personnalisées.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Je me resservirai très bientôt de ce fond de carte pour le développement d&#39;une
  application web, alors restez connectés !&amp;nbsp;&amp;nbsp;
&lt;/div&gt;

</description><link>https://www.codethemap.fr/2025/10/arcgis-vector-tile-style-editor.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifHbCjWrkIVZM0CnfuUAa2DzUZe0lk8iy-CNmn412pVM8z6G5_sFSS9wQVHBdbZWRHaD3A1ZDVX_RTpNy01I9mQrjbQ94EvqlZxbLh6KHYH61VEkd_lNO8HoR-TMrZZ5e_w2eJIIfXPp3U0wSS2-wTbc9cneTlAh5T-OvW5sb8bsH2lkqQVoFkriMNxeBL/s72-c/synthwave_minia_compr-min.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-8504755047701112689</guid><pubDate>Thu, 30 Oct 2025 07:57:00 +0000</pubDate><atom:updated>2025-10-30T09:24:06.916+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Composants</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><title>SDK JavaScript d&#39;ArcGIS : évolution des ViewModels et création de workflows personnalisés</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8SrC4HU84nJxQIdcpyeMRDOLv8WPc1Se6eKDpbVJK-1I-nLhFXkcuzgK9w5N_bKW0xlJ0rYr9NiMtVJQtpthyB1MQaqJUvb1xb4FYvSW8SNOWD4rnwZ22iZ4O0RFCE3LjNNRsIrWK5Lb-uUM9emC57rLuLaB5tfr60x1ptyUbfU5fwDcfazDls2MQYvX/s16000/viewmodels_minia-min.png&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le SDK JavaScript d’ArcGIS évolue, avec un engagement fort en faveur des
  web components standards. Ce changement d’architecture vise à accroître la
  productivité du développement front-end et à faciliter l’intégration avec des
  frameworks comme React ou Angular. Si les développeurs continueront à pouvoir
  créer des expériences personnalisées en s’appuyant sur la logique métier
  interne du SDK, la manière d’y accéder et de l’utiliser va toutefois évoluer.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8SrC4HU84nJxQIdcpyeMRDOLv8WPc1Se6eKDpbVJK-1I-nLhFXkcuzgK9w5N_bKW0xlJ0rYr9NiMtVJQtpthyB1MQaqJUvb1xb4FYvSW8SNOWD4rnwZ22iZ4O0RFCE3LjNNRsIrWK5Lb-uUM9emC57rLuLaB5tfr60x1ptyUbfU5fwDcfazDls2MQYvX/s826/viewmodels_minia-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;465&quot; data-original-width=&quot;826&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8SrC4HU84nJxQIdcpyeMRDOLv8WPc1Se6eKDpbVJK-1I-nLhFXkcuzgK9w5N_bKW0xlJ0rYr9NiMtVJQtpthyB1MQaqJUvb1xb4FYvSW8SNOWD4rnwZ22iZ4O0RFCE3LjNNRsIrWK5Lb-uUM9emC57rLuLaB5tfr60x1ptyUbfU5fwDcfazDls2MQYvX/s16000/viewmodels_minia-min.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Contexte&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comme expliqué dans
  &lt;a href=&quot;https://www.codethemap.fr/2025/10/sdk-javascript-darcgis-transition-vers.html&quot; target=&quot;_blank&quot;&gt;cet article&lt;/a&gt;, le SDK reposait à l’origine sur une architecture de widgets, car les
  standards des web components n’étaient pas encore matures ni largement pris en
  charge par les navigateurs. Aujourd’hui, avec leur adoption généralisée, Esri
  fait évoluer sa technologie : tous les widgets sont programmés pour être
  dépréciés d’ici le premier trimestre 2026, puis supprimés dès 2027. Les
  développeurs sont donc encouragés à migrer leur code d’interface pour utiliser
  les components à la place des widgets et de MapView/SceneView.&lt;br /&gt;&lt;br /&gt;Cette
  transition s’accompagne aussi de la disparition de la classe Widget.&lt;br /&gt;Les
  ViewModels, qui exposent actuellement la logique métier sous-jacente des
  widgets, sont aujourd’hui situés dans le dossier widgets/. Il est donc
  nécessaire de déplacer ces ViewModels, voire de repenser leur conception.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;L’avenir des ViewModels&lt;/span&gt;&lt;/h3&gt;
  Plutôt que de simplement les déplacer, Esri réfléchit à la meilleure façon
  d’exposer leur logique dans un SDK modernisé.&lt;br /&gt;Les ViewModels sont classés
  selon trois scénarios possibles :&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1/ Conservés et déplacés dans le cœur de l’API (core API)&lt;/b&gt;&lt;br /&gt;Leur logique sera maintenue mais relocalisée hors du dossier widgets.
  L’API pourra être ajustée pour répondre aux besoins spécifiques des
  components.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2/ Intégrés directement dans le cœur de l&#39;API&lt;/b&gt;&lt;br /&gt;Leur logique sera exposée autrement, via d’autres APIs. Par exemple, la
  logique d’AreaMeasurement2DViewModel pourrait être déplacée vers une API
  d’analyse, comme c’est déjà le cas en 3D avec
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-AreaMeasurementAnalysis.html&quot; target=&quot;_blank&quot;&gt;AreaMeasurementAnalysis&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;3/ Supprimés car absorbés par les components&lt;/b&gt;&lt;br /&gt;Certains ViewModels ne seront plus utiles, car leur logique sera
  directement gérée par les components. Esri classe les ViewModels dans cette
  catégorie lorsqu&#39;ils estiment qu&#39;ils n&#39;apportent pas de valeur ajoutée pour le
  développeur. Par exemple, WeatherViewModel n’est plus nécessaire puisque l’on
  peut déjà définir la météo directement sur SceneView.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Votre avis compte&lt;/span&gt;&lt;/h3&gt;
  Le classement de chaque ViewModel dépendra de ces critères, mais aussi des
  retours des développeurs.&lt;br /&gt;Esri encourage vivement à remplir
  &lt;a href=&quot;https://arcg.is/005zS9&quot; target=&quot;_blank&quot;&gt;ce questionnaire dédié&lt;/a&gt;,
  afin de mieux comprendre comment et pourquoi les ViewModels sont utilisés. Ces
  retours guideront la feuille de route à long terme du SDK, garantissant un
  équilibre entre productivité et flexibilité pour répondre aux besoins
  spécifiques des organisations.&lt;br /&gt;&lt;br /&gt;Cette réflexion influence aussi la
  conception de nouvelles fonctionnalités côté components. Par exemple,si les
  ViewModels sont utilisés pour simplifier les interfaces (masquer certains
  boutons ou options), une propriété de configuration pourra être ajoutée au
  component. De la même manière, si les développeurs les exploitent pour
  intégrer des workflows personnalisés, des slots permettront d’insérer
  directement leurs propres éléments ou contrôles dans le composant. Les
  components offriront également des options de personnalisation via CSS.
  L’objectif est de réduire la quantité de code personnalisé à maintenir, tout
  en préservant la souplesse nécessaire pour adapter l’expérience utilisateur à
  vos usages spécifiques.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Adapter votre code à la nouvelle implémentation&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les notes de version détailleront tous les changements liés aux ViewModels.
  Des ressources et exemples de code seront également publiés pour aider les
  développeurs à adopter les nouveaux modèles recommandés.&amp;nbsp;Certains
  ViewModels sont déjà dépréciés (depuis la version 4.33), et d’autres le seront
  progressivement. Voici la liste de ce qui existe déjà :
&lt;table style=&quot;border-collapse: collapse; border: 1px solid black;&quot;&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;ViewModel (déprécié)&lt;/th&gt;
      &lt;th style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;Nouvelle implémentation recommandée&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;AreaMeasurement3DViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser le &lt;b&gt;component Area Measurement 3D&lt;/b&gt; ou &lt;b&gt;AreaMeasurementAnalysis&lt;/b&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;ButtonMenuViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser &lt;b&gt;TableMenuConfig&lt;/b&gt; ou les &lt;b&gt;components Calcite&lt;/b&gt; (Dropdown, List, Menu)
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;DirectLineMeasurement3DViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser le &lt;b&gt;component Direct Line Measurement 3D&lt;/b&gt; ou &lt;b&gt;DirectLineMeasurementAnalysis&lt;/b&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;FullscreenViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser directement l’&lt;b&gt;API Fullscreen du navigateur&lt;/b&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;LineOfSightViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser le &lt;b&gt;component Line Of Sight&lt;/b&gt; ou &lt;b&gt;LineOfSightAnalysis&lt;/b&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;NavigationToggleViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;Utiliser le &lt;b&gt;component Navigation Toggle&lt;/b&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;SliceViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;
        Utiliser le &lt;b&gt;component Slice&lt;/b&gt; ou &lt;b&gt;SliceAnalysis&lt;/b&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;&lt;code&gt;WeatherViewModel&lt;/code&gt;&lt;/td&gt;
      &lt;td style=&quot;border: 1px solid black; padding: 5px;&quot;&gt;Utiliser le &lt;b&gt;component Weather&lt;/b&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Conclusion&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cette évolution stratégique du SDK JavaScript d&#39;ArcGIS illustre la volonté d’Esri
  d’offrir un SDK moderne, puissant et flexible, permettant de créer des
  applications performantes et personnalisées qui répondent aux besoins uniques
  de chaque organisation.
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/sdk-javascript-arcgis-viewmodels.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC8SrC4HU84nJxQIdcpyeMRDOLv8WPc1Se6eKDpbVJK-1I-nLhFXkcuzgK9w5N_bKW0xlJ0rYr9NiMtVJQtpthyB1MQaqJUvb1xb4FYvSW8SNOWD4rnwZ22iZ4O0RFCE3LjNNRsIrWK5Lb-uUM9emC57rLuLaB5tfr60x1ptyUbfU5fwDcfazDls2MQYvX/s72-c/viewmodels_minia-min.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-429204746599771528</guid><pubDate>Mon, 27 Oct 2025 20:51:00 +0000</pubDate><atom:updated>2025-10-27T21:51:41.144+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Python</category><title>Les nouveautés de la version 2.4.2 de l&#39;API Python d&#39;ArcGIS</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUkNohJKZ93BxYz0ipazZ5T42eHRKbW_UF4741-N0DvBL8lFlrEkFvu_ymvOfQrpgvCoMMwbmADffSu1uqsUFEUsOLqlzbrfTd4ODzJDDuEf_Vry2Y78mPu8jfoKiP-V5M77_x4C_5KWh2EHurIdMG4iz53ijJqLt5m2EIpxNN4mwGnye4KUvryeL5zRjH/s16000/minia_apipython242-min_redim.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  Esri a publié la version 2.4.2 (octobre 2025) de l&#39;API Python d&#39;ArcGIS ! Cette
  version est surtout axée sur la maintenance, mais elle apporte quelques
  nouveautés importantes à connaître, que je vous propose de découvrir dans cet
  article.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiE1oRM3mM3DqvexJ1qlZFxh9Jm4U2mTOZ2bp1vy2xWCCdpESZ53mos4VqZklzZadUNOGhFqswoDEAr9nI96p6PwDoFT-q-C-KDOEdFmqG4yugxpA-T1cDt-9ij8n9MU0pbscR3wkEW-SdWZ9I9_7SD7SLukpAxO18RozvfM8UkQ9zR4XFoIhIbfXHzXfxa/s651/python242.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;651&quot; data-original-width=&quot;649&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiE1oRM3mM3DqvexJ1qlZFxh9Jm4U2mTOZ2bp1vy2xWCCdpESZ53mos4VqZklzZadUNOGhFqswoDEAr9nI96p6PwDoFT-q-C-KDOEdFmqG4yugxpA-T1cDt-9ij8n9MU0pbscR3wkEW-SdWZ9I9_7SD7SLukpAxO18RozvfM8UkQ9zR4XFoIhIbfXHzXfxa/s320/python242.png&quot; width=&quot;319&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUkNohJKZ93BxYz0ipazZ5T42eHRKbW_UF4741-N0DvBL8lFlrEkFvu_ymvOfQrpgvCoMMwbmADffSu1uqsUFEUsOLqlzbrfTd4ODzJDDuEf_Vry2Y78mPu8jfoKiP-V5M77_x4C_5KWh2EHurIdMG4iz53ijJqLt5m2EIpxNN4mwGnye4KUvryeL5zRjH/s2299/minia_apipython242-min_redim.jpg&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1300&quot; data-original-width=&quot;2299&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUkNohJKZ93BxYz0ipazZ5T42eHRKbW_UF4741-N0DvBL8lFlrEkFvu_ymvOfQrpgvCoMMwbmADffSu1uqsUFEUsOLqlzbrfTd4ODzJDDuEf_Vry2Y78mPu8jfoKiP-V5M77_x4C_5KWh2EHurIdMG4iz53ijJqLt5m2EIpxNN4mwGnye4KUvryeL5zRjH/s16000/minia_apipython242-min_redim.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Support de Python 3.13&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Cette version de l’API Python passe de Python 3.11 à Python 3.13, une mise à
    jour majeure pour la communauté Python. Elle apporte des améliorations de
    performance, des optimisations mémoire et une meilleure expérience pour les
    développeurs. Si vous voulez tout savoir sur les nouveautés cette version de
    Python, vous pouvez consulter
    &lt;a href=&quot;https://realpython.com/python313-new-features/&quot; target=&quot;_blank&quot;&gt;cet article&lt;/a&gt;.
  &lt;/div&gt;
  &lt;h3 style=&quot;text-align: left;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Administration du SIG&lt;/span&gt;
  &lt;/h3&gt;
  Pour simplifier les tâches d’administration d’ArcGIS Enterprise et d’ArcGIS
  Enterprise sur Kubernetes, Esri a ajouté de nouvelles fonctionnalités dans les
  modules arcgis.gis et arcgis.gis.admin.&lt;br /&gt;&lt;br /&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;li&gt;
      &lt;b&gt;&lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.admin.html#aboutmanager&quot; target=&quot;_blank&quot;&gt;AboutManager&lt;/a&gt;
        :&lt;/b&gt;
      cette nouvelle classe fournit des informations sur l’usage et les licences
      des composants de votre déploiement ArcGIS Enterprise. La ressource
      “about” compile des informations comme les détails matériels (CPU, RAM,
      disque) et les licences pour chaque composant, y compris tous les serveurs
      fédérés.
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA5kp_FKZ6QEI_h7y65R0Ly1iXE53Kr3-IQ_gfojxKtauYK3OXhe6CImwkpAUkRuygH8luHkt6cjDt-h7lX0HGBwgKgN6Ks9dOdPWkGhXkaMcR4P8TOdPupWGGbB_3ijeMWfPTJeDRFnHv0gK5Y7CMX5mdkSADqqbF6RFXwRolDY7_ruNoskWNd4XIRlVo/s936/PythonAPI1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;240&quot; data-original-width=&quot;936&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA5kp_FKZ6QEI_h7y65R0Ly1iXE53Kr3-IQ_gfojxKtauYK3OXhe6CImwkpAUkRuygH8luHkt6cjDt-h7lX0HGBwgKgN6Ks9dOdPWkGhXkaMcR4P8TOdPupWGGbB_3ijeMWfPTJeDRFnHv0gK5Y7CMX5mdkSADqqbF6RFXwRolDY7_ruNoskWNd4XIRlVo/s16000/PythonAPI1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;&lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.admin.html#healthcheckmanager&quot; target=&quot;_blank&quot;&gt;HealthCheckManager&lt;/a&gt;,
        &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.admin.html#suitesmanager&quot; target=&quot;_blank&quot;&gt;SuitesManager&lt;/a&gt;
        et
        &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.admin.html#reportmanager&quot; target=&quot;_blank&quot;&gt;ReportManager&lt;/a&gt;
        :&lt;/b&gt;
      ces classes permettent d’évaluer la santé de l’organisation dans les
      déploiements Kubernetes.
    &lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;&lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.server.html#arcgis.gis.server.ServerManager.validate&quot; target=&quot;_blank&quot;&gt;ServerManager.validate()&lt;/a&gt;
        :&lt;/b&gt;
      la méthode a été améliorée avec la propriété verbose. En la passant à
      True, les administrateurs peuvent obtenir des informations détaillées sur
      l’état de leurs serveurs fédérés, pour diagnostiquer plus facilement les
      problèmes.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh15dscPFGDGI7eMVHZNBcdBHgAVZ9YH5gAqA68iE1xjyP2x9b2onMEFrUhCZJqZIbHl1uvDwXjvfXBusx63qyWlMczY5uHOKRRvBRWdKIPe_p5YPOi9RasLzckcEE1K203ylkBZe5EGlt7Z4i3ag_fFHcxL7pTLxQiJhZ4SPKC67QnbnqGLvz-k15VIOFv/s936/Python2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;234&quot; data-original-width=&quot;936&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh15dscPFGDGI7eMVHZNBcdBHgAVZ9YH5gAqA68iE1xjyP2x9b2onMEFrUhCZJqZIbHl1uvDwXjvfXBusx63qyWlMczY5uHOKRRvBRWdKIPe_p5YPOi9RasLzckcEE1K203ylkBZe5EGlt7Z4i3ag_fFHcxL7pTLxQiJhZ4SPKC67QnbnqGLvz-k15VIOFv/s16000/Python2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 style=&quot;text-align: left;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Gestion de contenu&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Les classes
    &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.nb.html#arcgis.gis.nb._dataaccess.NotebookDataAccess&quot; target=&quot;_blank&quot;&gt;NotebookDataAccess&lt;/a&gt;
    et
    &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.nb.html#notebookfile&quot; target=&quot;_blank&quot;&gt;NotebookFile&lt;/a&gt;, qui permettent de gérer les fichiers dans les notebooks, ne supportaient
    auparavant que les notebooks sur Notebook Server d’ArcGIS Enterprise. Elles
    sont désormais compatibles avec les workspaces de notebooks sur ArcGIS
    Online et ArcGIS Enterprise sur Kubernetes.&lt;br /&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;br /&gt;Une nouvelle classe,
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.gis.nb.html#notebookfolder&quot; target=&quot;_blank&quot;&gt;NotebookFolder&lt;/a&gt;, permet de gérer les dossiers et sous-dossiers du workspace. Les
  utilisateurs peuvent créer, renommer et supprimer des fichiers et dossiers, et
  les administrateurs peuvent réassigner le contenu d’un workspace à un autre
  utilisateur.&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6MosU3GKaai68t-iCfcJXLqh9NhWWC_rswAM8rbcN1mYM-SPwxKPP88JxqI-vAroLGzQX5_749aon7rsr5ThVN7MNAXIUxjHXNayNYBdlp5fyr2xiFi5c6hSvHlaGKDAMr7I6jPri6XYK1HarURHxMPo2sO8YO3WMKm91PU5jTNKurrCQiHZ85tCiYbJk/s936/Python3.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;936&quot; data-original-width=&quot;888&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6MosU3GKaai68t-iCfcJXLqh9NhWWC_rswAM8rbcN1mYM-SPwxKPP88JxqI-vAroLGzQX5_749aon7rsr5ThVN7MNAXIUxjHXNayNYBdlp5fyr2xiFi5c6hSvHlaGKDAMr7I6jPri6XYK1HarURHxMPo2sO8YO3WMKm91PU5jTNKurrCQiHZ85tCiYbJk/s16000/Python3.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;h3 style=&quot;text-align: left;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Cartographie et visualisation&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Pour faciliter la stylisation des fonds de carte, Esri introduit deux
    nouvelles classes : BasemapStyle et BasemapStylesService. Elles offrent un
    grand nombre de styles, d’options de style, de capacités serveur et
    garantissent la meilleure visualisation à tous les niveaux de zoom. Les
    données sont fournies sous forme de vector tiles et/ou map tiles, avec un
    support complet pour l’imagerie satellite et la personnalisation des
    styles.&lt;br /&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Data Science / arcgis.learn&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Le nouveau modèle
    &lt;a href=&quot;https://developers.arcgis.com/python/latest/api-reference/arcgis.learn.toc.html#hyperspectral3drcnet&quot; target=&quot;_blank&quot;&gt;Hyperspectral3DRCNet&lt;/a&gt;
    permet la classification d’images hyperspectrales, utile pour le remote
    sensing, la cartographie de l’occupation des sols, l’identification de
    cultures ou la surveillance environnementale. Il gère efficacement les
    données hyperspectrales à haute dimension et préserve les détails spectraux
    fins.&lt;br /&gt;&lt;br /&gt;Cette nouvelle version ajoute également le support pour de
    nouveaux backbones pour le remote sensing :
    &lt;a href=&quot;https://clay-foundation.github.io/model/index.html&quot; target=&quot;_blank&quot;&gt;Clay&lt;/a&gt;, &lt;a href=&quot;https://github.com/zhu-xlab/DOFA&quot; target=&quot;_blank&quot;&gt;DOFA&lt;/a&gt; et
    &lt;a href=&quot;https://github.com/allenai/satlaspretrain_models&quot; target=&quot;_blank&quot;&gt;Satlas&lt;/a&gt;, applicables aux modèles de détection d’objets, classification et
    classification par pixel, pour améliorer l’analyse géospatiale avancée.&lt;br /&gt;&lt;/div&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Plateformes supportées&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;li&gt;
      Python : 3.13 (principal), avec support secondaire pour 3.10, 3.11 et
      3.12.&amp;nbsp;
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;li&gt;Produits Esri :&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;ul&gt;
      &lt;li&gt;ArcGIS Pro 3.6 et ultérieur, environnements par défaut et clonés&lt;/li&gt;
      &lt;li&gt;
        ArcGIS Enterprise 12.0 (inclus avec ArcGIS Notebook runtime v13.0)
      &lt;/li&gt;
      &lt;li&gt;ArcGIS Online : mise à jour de février 2026&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;li&gt;
      Environnements Python standalone, via
      &lt;a href=&quot;https://anaconda.org/Esri/arcgis/files?version=2.4.2&quot; target=&quot;_blank&quot;&gt;Conda&lt;/a&gt;
      ou
      &lt;a href=&quot;https://www.blogger.com/blog/post/edit/preview/3781853964762057615/429204746599771528&quot; target=&quot;_blank&quot;&gt;PyPI&lt;/a&gt;.
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 style=&quot;text-align: left;&quot;&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Dépréciations et suppressions&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La bibliothèque
  &lt;a href=&quot;https://www.tensorflow.org/&quot; target=&quot;_blank&quot;&gt;TensorFlow&lt;/a&gt; est
  dépréciée et n’est plus supportée dans l’ArcGIS API for Python. Cette
  dépréciation entraîne également le retrait de plusieurs autres bibliothèques
  et dépendances, dont vous pouvez retrouver
  &lt;a href=&quot;https://community.esri.com/t5/arcgis-api-for-python-questions/tensorflow-removal-notice/m-p/1657630#M11721&quot; target=&quot;_blank&quot;&gt;la liste complète ici&lt;/a&gt;. Esri recommande une migration vers PyTorch.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez consulter le reste des dépréciations de cette version
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/deprecation-notices/&quot; target=&quot;_blank&quot;&gt;ici&lt;/a&gt;.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;En savoir +&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comme d&#39;habitude, les
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/release-notes-242/&quot; target=&quot;_blank&quot;&gt;notes de versions&lt;/a&gt;
  vous donneront la liste complètes des nouveautés, ainsi que les
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/release-notes-242/#fixes&quot; target=&quot;_blank&quot;&gt;corrections de bugs&lt;/a&gt;
  et les
  &lt;a href=&quot;https://developers.arcgis.com/python/latest/guide/deprecation-notices/&quot; target=&quot;_blank&quot;&gt;dépréciations&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  En plus de cela, de nombreuses ressources sont disponibles pour obtenir de
  l’aide et partager des retours sur l’API :&amp;nbsp;&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;ul style=&quot;text-align: left;&quot;&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://community.esri.com/t5/arcgis-api-for-python/ct-p/arcgis-api-for-python?aduc=PublicRelations&amp;amp;sf_id=7015x000000vfizAAA&amp;amp;aduco=sept-2024-release-blog&amp;amp;aduca=MIArcGISAPIForPythonDeveloper&amp;amp;utm_id=7015x000000vfizAAA&amp;amp;adum=Blog&amp;amp;utm_campaign=MIArcGISAPIForPythonDeveloper&amp;amp;utm_source=PublicRelations&amp;amp;utm_medium=Blog&amp;amp;utm_content=sept-2024-release-blog&quot; target=&quot;_blank&quot;&gt;La communauté ArcGIS API for Python d&#39;Esri Community&lt;/a&gt;
      pour poser des questions et suggérer des améliorations
    &lt;/li&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://github.com/Esri/arcgis-python-api/issues&quot; target=&quot;_blank&quot;&gt;Le repo Github public de l&#39;API Python&lt;/a&gt;
      pour signaler des bugs et proposer des évolutions.
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;p style=&quot;text-align: justify;&quot;&gt;
    Les retours que vous pouvez faire dans ces espaces communautaires sont
    activement suivis par l&#39;équipe de développeurs de l&#39;API, qui s&#39;en servent
    pour orienter les priorité pour le développement des futures versions, donc
    n&#39;hésitez pas à vous y exprimer !
  &lt;/p&gt;
&lt;/div&gt;

</description><link>https://www.codethemap.fr/2025/10/version-2-4-1-API-Python-ArcGIS.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUkNohJKZ93BxYz0ipazZ5T42eHRKbW_UF4741-N0DvBL8lFlrEkFvu_ymvOfQrpgvCoMMwbmADffSu1uqsUFEUsOLqlzbrfTd4ODzJDDuEf_Vry2Y78mPu8jfoKiP-V5M77_x4C_5KWh2EHurIdMG4iz53ijJqLt5m2EIpxNN4mwGnye4KUvryeL5zRjH/s72-c/minia_apipython242-min_redim.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-7294894548326600746</guid><pubDate>Fri, 24 Oct 2025 08:11:00 +0000</pubDate><atom:updated>2025-10-24T10:11:00.110+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Composants</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><title>SDK JavaScript d&#39;ArcGIS : transition vers les composants</title><description>&lt;meta content=&quot;Esri fait évoluer le SDK JavaScript vers une architecture fondée sur les web components, remplaçant progressivement les widgets classiques. Cette approche moderne simplifie le développement, améliore l’intégration et prépare la transition complète d’ici 2027.&quot; name=&quot;description&quot;/&gt;
&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTN6xol3AzjbuD3Gp4rdtexxdq2p4MpOiZKDir5GIxABhEXtwCpHUwjfNPikvOtqMMpCLKpD7cW6vNyqoc0aUuaYdNuXG21iCosjXc0RVmTy5_0rEMgESFFouwhmO4gDKH7ZEw9EM4oqDiUP2evYjDR_Jk_Rjn61NcTAbIy2LaMOxiepUGE2UfDb3ymLy3/s16000/transition_components_minia-min.png&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cela va bientôt faire deux ans que l&#39;on a parlé pour la première fois des
  composants dans le SDK JavaScript d&#39;ArcGIS. Depuis, Esri n&#39;a cessé de
  s&#39;engager pleinement dans la création de web components basés sur les
  standards du web, qui étendent le cœur de l’API de l’ArcGIS Maps SDK for
  JavaScript en éléments HTML réutilisables comme
  &amp;lt;arcgis-map&amp;gt;&amp;lt;/arcgis-map&amp;gt;.&amp;nbsp;
  &lt;br /&gt;Cette approche concerne aussi bien le développement interne des produits
  ArcGIS que les composants d’interface préconstruits inclus dans le SDK. Toutes
  les fonctionnalités principales des widgets existent déjà sous forme de
  composants. Aujourd’hui, la méthode recommandée pour créer des applications
  web avec le SDK est donc d’utiliser les composants.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTN6xol3AzjbuD3Gp4rdtexxdq2p4MpOiZKDir5GIxABhEXtwCpHUwjfNPikvOtqMMpCLKpD7cW6vNyqoc0aUuaYdNuXG21iCosjXc0RVmTy5_0rEMgESFFouwhmO4gDKH7ZEw9EM4oqDiUP2evYjDR_Jk_Rjn61NcTAbIy2LaMOxiepUGE2UfDb3ymLy3/s826/transition_components_minia-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;465&quot; data-original-width=&quot;826&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTN6xol3AzjbuD3Gp4rdtexxdq2p4MpOiZKDir5GIxABhEXtwCpHUwjfNPikvOtqMMpCLKpD7cW6vNyqoc0aUuaYdNuXG21iCosjXc0RVmTy5_0rEMgESFFouwhmO4gDKH7ZEw9EM4oqDiUP2evYjDR_Jk_Rjn61NcTAbIy2LaMOxiepUGE2UfDb3ymLy3/s16000/transition_components_minia-min.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Les avantages des composants&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Ce changement d’architecture vise à maximiser la productivité des développeurs
  front-end. Les custom elements offrent une expérience de développement
  familière (HTML, CSS, JavaScript) et s’intègrent naturellement dans les
  frameworks modernes. En interne, ces composants sont construits à partir des
  éléments du Calcite Design System, ce qui permet de les styliser grâce aux
  design tokens de Calcite (via du CSS). De plus, en encapsulant les
  fonctionnalités d&#39;ArcGIS sous forme de web components au sein de ses produits,
  Esri peut proposer dans le SDK des composants configurables reproduisant des
  workflows éprouvés, comme l’Arcade Editor ou les Charts components déjà
  publiés.&amp;nbsp;La collection de composants du SDK continuera à s’enrichir au
  fil du temps.&lt;br /&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Des widgets aux map components&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  À l’origine du SDK, les standards des web components étaient encore émergents
  et peu adoptés par les navigateurs. Parallèlement, dans un écosystème en
  évolution constante, Esri n’avait pas souhaité s’enfermer dans un framework
  JavaScript particulier. C’est ainsi qu’est née l’architecture des widgets,
  avec plus de 60 widgets mis à disposition des développeurs.&lt;br /&gt;Désormais,
  puisque tous les navigateurs majeurs prennent en charge les web components, la
  technologie peut évoluer de concert avec le navigateur, comme c’est déjà le
  cas pour d’autres aspects internes du SDK.&lt;br /&gt;&lt;br /&gt;Dans un premier temps,
  les widgets sont simplement encapsulés sous forme de web components, puis leur
  structure interne est progressivement réimplémentée de façon optimisée, sans
  dépendre de l’ancienne architecture. Une liste des composants ayant déjà
  effectué cette transition est disponible dans les
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/release-notes/#map-components&quot; target=&quot;_blank&quot;&gt;notes de version&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Une fois cette réécriture terminée, le SDK ajoutera la prise en
  charge des slots, afin de permettre aux développeurs d’intégrer leurs propres
  contrôles ou fonctionnalités directement dans l’interface du composant.
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/&quot; target=&quot;_blank&quot;&gt;Calcite Design System&lt;/a&gt;
  constitue une bonne introduction à ce concept, puisque la plupart de ses
  composants utilisent déjà des slots.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Une documentation et des ressources SDK en transition&lt;/span&gt;
  &lt;/h3&gt;
  De nombreuses ressources du site du SDK reposent déjà sur les components :
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/get-started-overview/&quot; target=&quot;_blank&quot;&gt;guide de démarrage&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/programming-patterns/&quot; target=&quot;_blank&quot;&gt;bonnes pratiques&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/tutorials/&quot; target=&quot;_blank&quot;&gt;tutoriels&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/&quot; target=&quot;_blank&quot;&gt;plusieurs échantillons de code&lt;/a&gt;, component playground,
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/&quot; target=&quot;_blank&quot;&gt;API reference&lt;/a&gt;, etc.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cependant, comme le site du SDK regroupe huit années de contenu, la transition
  complète nécessitera plusieurs versions.Pendant cette phase, certaines pages
  ou extraits de code peuvent encore refléter les anciens modèles (non basés sur
  les components). Esri s&#39;assurera que chaque nouvelle version du SDK apportera
  des progrès notables dans cette migration.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Feuille de route : widgets et components&lt;/span&gt;
  &lt;/h3&gt;
  Esri a annoncé qu&#39;à terme, tous les widgets seront dépréciés puis retirés. Les
  développeurs sont donc encouragés à migrer leurs interfaces vers les
  components, en remplacement des widgets ainsi que de MapView et SceneView.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  L’effort à fournir dépendra beaucoup du type d’application : pour certaines,
  la migration sera rapide ; pour d’autres, elle nécessitera une planification
  plus importante.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Voici les grandes étapes prévues :&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Lorsqu’un component du package @arcgis/map-components aura été entièrement
      réécrit sans dépendre d’un widget, le widget équivalent sera déprécié
      (mentionné dans la doc, les exemples et la console).
    &lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;Tous les widgets seront dépréciés au plus tôt au premier trimestre
        2026.&lt;/b&gt;
    &lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;Tous les widgets seront retirés du SDK au plus tôt au premier trimestre
        2027.&lt;/b&gt;&amp;nbsp;
    &lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Accès à la logique métier sous-jacente&lt;/span&gt;
  &lt;/h3&gt;
  Si la présentation visuelle des éléments (UI) passe progressivement des
  widgets aux components, la logique métier disponible via les view models
  reste, elle, toujours accessible.&lt;br /&gt;&lt;br /&gt;Les développeurs pourront donc
  continuer à construire des expériences ou workflows personnalisés à partir de
  cette logique.&lt;br /&gt;Cependant, Esri souhaite mieux comprendre comment ces view
  models sont utilisés, afin d’orienter la feuille de route du SDK. Par exemple,
  certaines raisons fréquentes pour lesquelles les développeurs utilisent des
  view models pourraient être traitées plus simplement si Esri ajoutait des
  options directement dans les composants du SDK :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Simplifier une interface (retirer des boutons, options…) : une option de
      configuration pourrait être ajoutée pour afficher ou masquer certains
      éléments.
    &lt;/li&gt;
    &lt;li&gt;
      Intégrer un workflow personnalisé : un slot pourrait permettre d’intégrer
      un composant spécifique dans l’interface (par ex. un bouton lançant un
      workflow).
    &lt;/li&gt;
  &lt;/ul&gt;
  Dans certains cas, les view models servent à construire des workflows
  entièrement sur mesure — comme avec SketchViewModel, souvent utilisé pour
  gérer le dessin interactif sur la carte. Ce type de logique restera supporté à
  l’avenir dans les applications utilisant la logique métier du SDK.&lt;br /&gt;Nous
  reparlerons plus en détail de l&#39;évolution à venir des View Models dans un
  prochain article à paraître en début de semaine prochaine.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;En savoir + :&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  N&#39;hésitez pas à consulter les ressources suivantes :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/get-started/&quot; target=&quot;_blank&quot;&gt;Démarrer avec l&#39;ArcGIS Maps SDK for JavaScript&lt;/a&gt;
    &lt;/li&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/tutorials/&quot; target=&quot;_blank&quot;&gt;Tutoriels&lt;/a&gt;&amp;nbsp;
    &lt;/li&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/components/&quot; target=&quot;_blank&quot;&gt;Aperçu général des composants&lt;/a&gt;
    &lt;/li&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/programming-patterns/&quot; target=&quot;_blank&quot;&gt;Patterns de programmation&lt;/a&gt;&amp;nbsp;
    &lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez également consulter
  &lt;a href=&quot;https://www.codethemap.fr/2025/05/personnalisation-carte-JS-arcgis.html&quot; target=&quot;_blank&quot;&gt;cette série de tutoriel&lt;/a&gt;, où nous avions créé une app en utilisant les composants.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;

</description><link>https://www.codethemap.fr/2025/10/sdk-javascript-darcgis-transition-vers.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTN6xol3AzjbuD3Gp4rdtexxdq2p4MpOiZKDir5GIxABhEXtwCpHUwjfNPikvOtqMMpCLKpD7cW6vNyqoc0aUuaYdNuXG21iCosjXc0RVmTy5_0rEMgESFFouwhmO4gDKH7ZEw9EM4oqDiUP2evYjDR_Jk_Rjn61NcTAbIy2LaMOxiepUGE2UfDb3ymLy3/s72-c/transition_components_minia-min.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-4374207301260388060</guid><pubDate>Wed, 22 Oct 2025 08:54:00 +0000</pubDate><atom:updated>2025-10-23T09:47:11.237+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><title>Quelles sont les nouveautés de la version 4.34 du SDK JavaScript d&#39;ArcGIS ?</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX8M89wlVr33Fb4khHEDd26w4etNFCzQmN8zguEB7TCPF6acdYa8rC57xpD3Jl75xFeoxPgPdKHko4l_ELWOiacsuDGy-2NTOteFktKcqfFr14Qa_H1YCH2NwrMQq_OdekOc2hCw_2Elp4k0IuUvvCj0MhBGgpoQZfDKPCq0R_oeQ-iEBVSuXoKkxdYpgw/s16000/minia_js_434.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 4.34 de l&#39;ArcGIS Maps SDK for JavaScript vient d&#39;être publiée, et
  &lt;a href=&quot;https://www.codethemap.fr/2025/10/esri-annonce-le-versionnage-semantique.html&quot; target=&quot;_blank&quot;&gt;ça sera la dernière version de la génération 4.x&lt;/a&gt; ! 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.
&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX8M89wlVr33Fb4khHEDd26w4etNFCzQmN8zguEB7TCPF6acdYa8rC57xpD3Jl75xFeoxPgPdKHko4l_ELWOiacsuDGy-2NTOteFktKcqfFr14Qa_H1YCH2NwrMQq_OdekOc2hCw_2Elp4k0IuUvvCj0MhBGgpoQZfDKPCq0R_oeQ-iEBVSuXoKkxdYpgw/s1306/minia_js_434.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;733&quot; data-original-width=&quot;1306&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX8M89wlVr33Fb4khHEDd26w4etNFCzQmN8zguEB7TCPF6acdYa8rC57xpD3Jl75xFeoxPgPdKHko4l_ELWOiacsuDGy-2NTOteFktKcqfFr14Qa_H1YCH2NwrMQq_OdekOc2hCw_2Elp4k0IuUvvCj0MhBGgpoQZfDKPCq0R_oeQ-iEBVSuXoKkxdYpgw/s16000/minia_js_434.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Rendu de flux en 3D&amp;nbsp;&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-FlowRenderer.html&quot; target=&quot;_blank&quot;&gt;Flow Renderer&lt;/a&gt;, applicable aux couches d’imagerie (ImageryTileLayer et ImageryLayer).
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWp3DkzD7Y0zQiP6qfj6Hw4XGdraJ5AYqftK5-Ix8JbmT3FF4g4Gga9u-DXDm_rOQsL6ROqdWxqnFK9UGeMuIuvm3j9xYM5cPqNm06aeDXzosVjsgbapVUU6xiUOlBc2aq-M91DiEi9i2nFcLy_f5P7GULE0mVUdTqV6Vn5rs0q36Mtxkib97cmSyw8DWm/s736/gif_vents.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;716&quot; data-original-width=&quot;736&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWp3DkzD7Y0zQiP6qfj6Hw4XGdraJ5AYqftK5-Ix8JbmT3FF4g4Gga9u-DXDm_rOQsL6ROqdWxqnFK9UGeMuIuvm3j9xYM5cPqNm06aeDXzosVjsgbapVUU6xiUOlBc2aq-M91DiEi9i2nFcLy_f5P7GULE0mVUdTqV6Vn5rs0q36Mtxkib97cmSyw8DWm/s16000/gif_vents.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: justify;&quot;&gt;&amp;nbsp;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.
  &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEvnv8Y-wkiIgaFYpBXV7lj2Qhp28Bd0TJ6U7HSqcx5AhEacOGtmTyYpCdk1yqx9sBe87wPE3ZGxYkXgwST1e9wzsp4aPQWiUfBNyKAHu50aQzmRJdgLBIe_nZlSiPJrNGRauaCwMWUb0q647tLNA86aq5IvrzEbhn9JloJcEAaUG7UaLnofg6NOBDrQGS/s960/flow-local-video-blog-optimized-2.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;540&quot; data-original-width=&quot;960&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEvnv8Y-wkiIgaFYpBXV7lj2Qhp28Bd0TJ6U7HSqcx5AhEacOGtmTyYpCdk1yqx9sBe87wPE3ZGxYkXgwST1e9wzsp4aPQWiUfBNyKAHu50aQzmRJdgLBIe_nZlSiPJrNGRauaCwMWUb0q647tLNA86aq5IvrzEbhn9JloJcEAaUG7UaLnofg6NOBDrQGS/s16000/flow-local-video-blog-optimized-2.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Edition des géométries avec découpe et fusion&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les workflows d’édition Split (découper) et Merge (fusionner) sont désormais
  intégrés au
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-editor/&quot; target=&quot;_blank&quot;&gt;composant d’édition&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor-SplitFeatureWorkflow.html&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Split :&lt;/b&gt;&lt;/a&gt;
      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.
    &lt;/li&gt;
    &lt;li&gt;
      &lt;b&gt;&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor-MergeFeaturesWorkflow.html&quot; target=&quot;_blank&quot;&gt;Merge :&lt;/a&gt; &lt;/b&gt;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.
    &lt;/li&gt;
  &lt;/ul&gt;
  Ces outils sont particulièrement utiles pour les modifications cadastrales ou
  de parcelles agricoles ou forestières.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsCaQmKQXD2EFu4VRIjdpkP9n00oHYbWktO-vKR4Dl5sAMzygiQkJgyTKGMw8Qa29INDY3ebIIY-xs-F5eM9P6p0VOMrejWXGy1sZ4L-bGE_2GupA6yre05m363swtn7qffMBqHFbfKo9JFySZFJ7ZO_VQXCPrs17H81L3ybXwfbTz-KjtaCE_K5ZnimL7/s900/split-and-merge-farms-900.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;471&quot; data-original-width=&quot;900&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsCaQmKQXD2EFu4VRIjdpkP9n00oHYbWktO-vKR4Dl5sAMzygiQkJgyTKGMw8Qa29INDY3ebIIY-xs-F5eM9P6p0VOMrejWXGy1sZ4L-bGE_2GupA6yre05m363swtn7qffMBqHFbfKo9JFySZFJ7ZO_VQXCPrs17H81L3ybXwfbTz-KjtaCE_K5ZnimL7/s16000/split-and-merge-farms-900.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Développer des applications avec des components&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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 &amp;lt;arcgis-map&amp;gt;
  ou &amp;lt;arcgis-scene&amp;gt; à la place des widgets.&lt;br /&gt;Le guide
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/migrating-to-components/&quot; target=&quot;_blank&quot;&gt;Migrating to components&lt;/a&gt;
  détaille les bonnes pratiques de transition. Nous en reparlerons également
  dans un article prévu pour la fin de la semaine.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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é.&lt;br /&gt;&lt;br /&gt;
  &lt;h4&gt;
    &lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/slot&quot; target=&quot;_blank&quot;&gt;Slots&lt;/a&gt;&amp;nbsp;&lt;/span&gt;
  &lt;/h4&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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.&lt;br /&gt;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.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour un positionnement personnalisé, vous pouvez directement utiliser le CSS,
  sans slot.
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;body class=&quot;calcite-mode-dark&quot;&amp;gt;
  &amp;lt;arcgis-map item-id=&quot;237b9584339446a0b56317b5962a4971&quot;&amp;gt;
    &amp;lt;arcgis-zoom slot=&quot;top-left&quot;&amp;gt;&amp;lt;/arcgis-zoom&amp;gt;
    &amp;lt;arcgis-legend slot=&quot;bottom-right&quot;&amp;gt;&amp;lt;/arcgis-legend&amp;gt;
    &amp;lt;calcite-button slot=&quot;top-right&quot;&amp;gt;Click me!&amp;lt;/calcite-button&amp;gt;
  &amp;lt;/arcgis-map&amp;gt;
&amp;lt;/body&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Shadow DOM&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Tous les composants Map disposent désormais d’un
  &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_shadow_DOM&quot; target=&quot;_blank&quot;&gt;Shadow DOM&lt;/a&gt;. 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.&lt;br /&gt;Pour personnaliser le style, il faut
  désormais utiliser les design tokens et les variables CSS documentées.&lt;br /&gt;&lt;br /&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Modes&lt;/span&gt;&lt;/h4&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les thèmes clair et sombre sont configurables via les
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/core-concepts/#modes&quot; target=&quot;_blank&quot;&gt;modes de Calcite&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Variables CSS de Layout&lt;/span&gt;&lt;/h4&gt;
  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.
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-css&quot;&gt;--arcgis-layout-overlay-space-top
--arcgis-layout-overlay-space-right
--arcgis-layout-overlay-space-bottom
--arcgis-layout-overlay-space-left
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Chargement des styles du SDK&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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.&lt;br /&gt;Pour
  plus de détails et quelques cas particuliers, consultez
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/release-notes/#changes-to-core-stylesheet-usage&quot; target=&quot;_blank&quot;&gt;les notes de version&lt;/a&gt;, ainsi que le
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/building-your-ui/&quot; target=&quot;_blank&quot;&gt;guide de création d&#39;UI de la documentation&lt;/a&gt;.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Diagrammes : code simplifié et nouveau graphique de type « heat chart
    »&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Chargement déclaratif&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez maintenant créer un diagramme pour votre application directement
  dans votre HTML, en liant le component à un feature layer (avec son attribut
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/charts-components/arcgis-chart/#layerItemId&quot; target=&quot;_blank&quot;&gt;layer-item-id&lt;/a&gt;) et à au graphique que vous voulez afficher (avec l&#39;attribut
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/charts-components/arcgis-chart/#chartIndex&quot; target=&quot;_blank&quot;&gt;chart-index&lt;/a&gt;) :
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-chart 
  layer-item-id=&quot;8871626e970a4f3e9d6113ec63a92f2f&quot; 
  chart-index=&quot;0&quot;&amp;gt;
&amp;lt;/arcgis-chart&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Heat chart&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/tutorials/create-a-heat-chart/&quot; target=&quot;_blank&quot;&gt;ce tutoriel&lt;/a&gt;
  pour le prendre en main.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDcEvYb2Np0DUffhuImkhkZo9ICiUe_SeXEKODOujbzl_pGZN8Df2rfld2Oqhmc9Hj-yWTfoC2ta2R5Ez8aox_T39xw00EopibhPdEDAJRVc06IzNl29pKKUuop7c-GORcZF7QIf0MLAak3AbmHGaKPIpvnxFbtSK43LduYjpPT2DIRX3-NJhKL-fC8JRV/s1400/434-heat-chart.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;821&quot; data-original-width=&quot;1400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDcEvYb2Np0DUffhuImkhkZo9ICiUe_SeXEKODOujbzl_pGZN8Df2rfld2Oqhmc9Hj-yWTfoC2ta2R5Ez8aox_T39xw00EopibhPdEDAJRVc06IzNl29pKKUuop7c-GORcZF7QIf0MLAak3AbmHGaKPIpvnxFbtSK43LduYjpPT2DIRX3-NJhKL-fC8JRV/s16000/434-heat-chart.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Formatage cohérent des champs au niveau des couches&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez désormais
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FieldConfiguration.html&quot; target=&quot;_blank&quot;&gt;configurer le formatage des champs directement dans vos couches&lt;/a&gt;
  (alias, format de date ou de nombre) pour garantir une cohérence d’affichage
  dans les components (popup, fenêtre contextuelle...)&lt;br /&gt;Cette fonctionnalité
  s’appuie sur la classe
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FieldConfiguration.html&quot; target=&quot;_blank&quot;&gt;FieldConfiguration&lt;/a&gt;, qui remplace progressivement
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-popup-FieldInfo.html&quot; target=&quot;_blank&quot;&gt;FieldInfo&lt;/a&gt;&amp;nbsp;(les applications existantes utilisant toujours FieldInfo continueront
  cependant à fonctionner).&lt;br /&gt;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.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Nouveau composant Popup (bêta)&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le nouveau component
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-popup/&quot; target=&quot;_blank&quot;&gt;&amp;lt;arcgis-popup&amp;gt;&lt;/a&gt;&amp;nbsp;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.&lt;br /&gt;Il suffit de l’ajouter comme
  élément enfant dans le slot popup :&amp;nbsp;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;arcgis-map item-id=&quot;237b9584339446a0b56317b5962a4971&quot;&amp;gt;
  &amp;lt;arcgis-popup slot=&quot;popup&quot;&amp;gt;&amp;lt;/arcgis-popup&amp;gt;
&amp;lt;/arcgis-map&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Nouvelle analyse de mesure de volume (bêta)&lt;/span&gt;
  &lt;/h3&gt;
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html&quot; target=&quot;_blank&quot;&gt;L’analyse de volume en 3D&lt;/a&gt;
  permet de mesurer et visualiser les volumes de terrain directement dans une
  scène. Deux
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#measureType&quot; target=&quot;_blank&quot;&gt;types de mesures&lt;/a&gt;
  sont proposés :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      cut-fill :&amp;nbsp;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&#39;est idéal pour estimer la quantité de matériaux à enlever ou à ajouter
      afin de niveler un terrain lors de travaux de construction.
    &lt;/li&gt;
    &lt;li&gt;
      stockpile :&amp;nbsp;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.
    &lt;/li&gt;
  &lt;/ul&gt;
  L’analyse de volume suit la même logique d’API que les autres outils d’analyse
  du SDK : elle fournit les
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-VolumeMeasurement-VolumeMeasurementResult.html&quot; target=&quot;_blank&quot;&gt;résultats&lt;/a&gt;
  de mesure et permet d’&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-VolumeMeasurementAnalysisView3D.html#place&quot; target=&quot;_blank&quot;&gt;ajouter&lt;/a&gt;
  ou de modifier les géométries directement depuis la
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-VolumeMeasurementAnalysisView3D.html&quot; target=&quot;_blank&quot;&gt;vue d’analyse&lt;/a&gt;. 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).
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTzX_ba6HGu05MGX0Nk7kAZ6zm5yhkZg8efq4HQRluMEzawwQ5YSoWJDmI_evbg8Q5jBa7BlZZ-bgKklY58U43YZbCbgh9MBx2iGg_Z5RkMtBRbL3SQUZ9MQ7wYZfP9YdkBR5zaohWCMaNKnHmqfjRDAOFIRAv0C6QqGIuwWYDepf6LEzDfO8pRhUYmNkZ/s800/volume-measurement-analysis.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;450&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTzX_ba6HGu05MGX0Nk7kAZ6zm5yhkZg8efq4HQRluMEzawwQ5YSoWJDmI_evbg8Q5jBa7BlZZ-bgKklY58U43YZbCbgh9MBx2iGg_Z5RkMtBRbL3SQUZ9MQ7wYZfP9YdkBR5zaohWCMaNKnHmqfjRDAOFIRAv0C6QqGIuwWYDepf6LEzDfO8pRhUYmNkZ/s16000/volume-measurement-analysis.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Amélioration des couches Parquet (bêta)&lt;/span&gt;&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  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 :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      ajouter des fichiers Parquet non spatiaux, permettant de visualiser des
      données tabulaires ;
    &lt;/li&gt;
    &lt;li&gt;
      afficher les données des couches Parquet dans une Feature Table ou un
      Popup ;
    &lt;/li&gt;
    &lt;li&gt;effectuer des requêtes attributaires et spatiales ;&lt;/li&gt;
    &lt;li&gt;calculer des statistiques.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Analyse de profil d’élévation (bêta)&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div&gt;
    L’&lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-ElevationProfileAnalysis.html&quot; target=&quot;_blank&quot;&gt;analyse de profil d’élévation&lt;/a&gt;
    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.&lt;br /&gt;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
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/analysis-elevation-profile/&quot; target=&quot;_blank&quot;&gt;cet exemple de code&lt;/a&gt;.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkFFiwl_UOirKSOfSc95FHXm3Y2ijASXtfQfOfYEmWi3AZcv6PiWzpXyPFxeIDnu-F2qYn6FUB5hu9j3_YoMuDIB958L209dH1UYeEt1XjPeAI3bCfBOjdzSZ6K8qeNy4ekeLL9OwUiAVAKeA0FKYEdlSQYsGlJFq73fzDny0eEdff1mN4crQ9aKvJf8ha/s800/analysis-elevation-profile.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;450&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkFFiwl_UOirKSOfSc95FHXm3Y2ijASXtfQfOfYEmWi3AZcv6PiWzpXyPFxeIDnu-F2qYn6FUB5hu9j3_YoMuDIB958L209dH1UYeEt1XjPeAI3bCfBOjdzSZ6K8qeNy4ekeLL9OwUiAVAKeA0FKYEdlSQYsGlJFq73fzDny0eEdff1mN4crQ9aKvJf8ha/s16000/analysis-elevation-profile.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Import de modèles 3D géoréférencés&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div&gt;
    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
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/editing-scenelayer-applyedits/&quot; target=&quot;_blank&quot;&gt;cet exemple mis à jour&lt;/a&gt;
    et dans le guide des
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/3d-object-workflows/&quot; target=&quot;_blank&quot;&gt;workflows de manipulation des objets 3D de la documentation&lt;/a&gt;.
  &lt;/div&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations en matière d’accessibilité&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div&gt;
    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.
  &lt;/div&gt;
  &lt;div&gt;&amp;nbsp;&lt;/div&gt;
  &lt;div&gt;
    &lt;h4&gt;
      &lt;span style=&quot;font-size: large;&quot;&gt;Désactivation des animations dans les cartes 2D&lt;/span&gt;
    &lt;/h4&gt;
    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.&lt;br /&gt;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
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/cim-animations/&quot; target=&quot;_blank&quot;&gt;l’exemple mis à jour sur les symboles animés&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;
    &lt;h4&gt;
      &lt;span style=&quot;font-size: large;&quot;&gt;Attributs ARIA dans les composants Map et Scene&lt;/span&gt;
    &lt;/h4&gt;
    Les
    &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA&quot; target=&quot;_blank&quot;&gt;attributs ARIA&lt;/a&gt;
    améliorent la compatibilité avec les lecteurs d’écran et facilitent la
    création d’applications véritablement inclusives.&amp;nbsp;
  &lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;const viewElement = document.querySelector(&quot;arcgis-map&quot;);
viewElement.aria = {
  label: &quot;New York Transit Map&quot;,
  description: &quot;A map showcasing New York City&#39;s public transit lines.&quot;
};
&lt;/code&gt;&lt;/pre&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Optimisation du dernier kilomètre (Last Mile Delivery)&lt;/span&gt;
  &lt;/h3&gt;
  &lt;div&gt;
    Le
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-lastMileDelivery.html&quot; target=&quot;_blank&quot;&gt;Last Mile Delivery&lt;/a&gt;
    correspond à un type d’opération de routage des véhicules (&lt;a href=&quot;https://developers.arcgis.com/documentation/mapping-and-location-services/routing-and-directions/vehicle-routing-problem/&quot; target=&quot;_blank&quot;&gt;Vehicle Routing Problem&lt;/a&gt;) 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.&lt;br /&gt;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.&lt;br /&gt;Le SDK intègre désormais
    une
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-lastMileDelivery.html&quot; target=&quot;_blank&quot;&gt;classe dédiée&lt;/a&gt;
    permettant d’exploiter facilement cette capacité d’ArcGIS dans vos
    applications.
  &lt;/div&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Pour aller plus loin&lt;/span&gt;&lt;/h3&gt;
  &lt;div&gt;
    Cet article ne couvre qu’une partie des nouvelles fonctionnalités et
    améliorations de la version 4.34.&lt;br /&gt;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.&lt;br /&gt;Consultez les
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/4.34/&quot; target=&quot;_blank&quot;&gt;notes de version&lt;/a&gt;
    et explorez les
    &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/?tagged=4.34&quot; target=&quot;_blank&quot;&gt;nouveaux exemples&lt;/a&gt;
    pour avoir une vue complète de cette mise à jour !
  &lt;/div&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/quelles-sont-les-nouveautes-de-la.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX8M89wlVr33Fb4khHEDd26w4etNFCzQmN8zguEB7TCPF6acdYa8rC57xpD3Jl75xFeoxPgPdKHko4l_ELWOiacsuDGy-2NTOteFktKcqfFr14Qa_H1YCH2NwrMQq_OdekOc2hCw_2Elp4k0IuUvvCj0MhBGgpoQZfDKPCq0R_oeQ-iEBVSuXoKkxdYpgw/s72-c/minia_js_434.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-6662889642035381676</guid><pubDate>Mon, 20 Oct 2025 08:37:00 +0000</pubDate><atom:updated>2025-10-20T11:27:19.627+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><title>Simplifiez le chargement des modules dans vos applications CDN avec $arcgis.import()</title><description>&lt;meta content=&quot;$arcgis.import(), la nouvelle méthode moderne pour charger les modules de l’API JavaScript d’ArcGIS depuis le CDN,
simplifie le code, améliore les performances et facilite le chargement dynamique ou conditionnel des modules selon les besoins de l’application.&quot; name=&quot;description&quot;&gt;&lt;/meta&gt;
&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit3gNysF7xKxGheBDpwTkLHxOOCB4G9jY6Z-BYakTHYliznHdmElMBTr6q5ORyW0qMj7hRcPw_bxdfFXf-abKqnRdPB6HwYQdckyiZvy_WaV7iZ3vwXTq5ZLvrBCxtq3aCG_dWUFWPpRTaqPi_0aWLRHwOdxQbX7_v2z0SLkGrH7EiaQuubNlep42PMZHj/s16000/minia_arcgisimport-min.jpg&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le paysage des modules JavaScript évolue rapidement. Historiquement, le format
  AMD convenait bien aux applications JavaScript&amp;nbsp; vanilla chargées via un
  CDN, mais aujourd’hui, les modules ES (ESM) sont devenus la norme pour les
  applications web modernes.
  &lt;a href=&quot;https://github.com/microsoft/TypeScript/issues/54500&quot; target=&quot;_blank&quot;&gt;TypeScript, par exemple, a annoncé la dépréciation prochaine de la sortie
    en AMD&lt;/a&gt;, confirmant cette tendance de fond.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour les développeurs qui utilisent l&#39;ArcGIS Maps SDK for JavaScript via le
  CDN, cette transition ouvre de nouvelles perspectives… tout en demandant
  quelques ajustements.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit3gNysF7xKxGheBDpwTkLHxOOCB4G9jY6Z-BYakTHYliznHdmElMBTr6q5ORyW0qMj7hRcPw_bxdfFXf-abKqnRdPB6HwYQdckyiZvy_WaV7iZ3vwXTq5ZLvrBCxtq3aCG_dWUFWPpRTaqPi_0aWLRHwOdxQbX7_v2z0SLkGrH7EiaQuubNlep42PMZHj/s2871/minia_arcgisimport-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1622&quot; data-original-width=&quot;2871&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit3gNysF7xKxGheBDpwTkLHxOOCB4G9jY6Z-BYakTHYliznHdmElMBTr6q5ORyW0qMj7hRcPw_bxdfFXf-abKqnRdPB6HwYQdckyiZvy_WaV7iZ3vwXTq5ZLvrBCxtq3aCG_dWUFWPpRTaqPi_0aWLRHwOdxQbX7_v2z0SLkGrH7EiaQuubNlep42PMZHj/s16000/minia_arcgisimport-min.jpg&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Depuis la
  &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/4.32/#module-loading-via-cdn&quot; target=&quot;_blank&quot;&gt;version 4.32&lt;/a&gt;, le SDK introduit une nouvelle API asynchrone : $arcgis.import(), une API
  basée sur des promesses pour charger les modules du SDK dans les applications
  construites avec le CDN.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Comparée aux approches AMD reposant sur des fonctions de rappel (require()),
  elle offre une syntaxe plus claire pour mettre en œuvre des modèles de
  chargement différé (lazy loading) ou conditionnel (conditional loading). Elle
  s’intègre naturellement aux modèles modernes utilisant async / await, tout en
  restant entièrement compatible avec les applications AMD existantes. Elle a
  également été conçue pour prendre en charge de manière transparente les
  modules ES à l’avenir, sans nécessiter de modification du code.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour toute nouvelle application utilisant le SDK via le CDN, il est désormais
  recommandé d’utiliser $arcgis.import().&lt;br /&gt;require() reste pris en charge,
  mais $arcgis.import() est la méthode la plus moderne et la plus pérenne.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Dans cet article, je vous propose de comparer&amp;nbsp;$arcgis.import() au modèle
  require() traditionnel, de comprendre quand et pourquoi préférer cette
  nouvelle approche, de découvrir les modèles pratiques pour le chargement
  dynamique et d&#39;envisager un plan de migration.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Trois façons de consommer le SDK&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;NPM + outils de build (ESM)&lt;/span&gt;&lt;/h4&gt;
  Vous pouvez installer le SDK via NPM (@arcgis/core) et utiliser la syntaxe ESM
  avec un bundler comme Vite, Webpack ou Rollup. Les frameworks modernes tels
  que React, Vue, Svelte et Angular suivent cette approche, qui est déjà
  entièrement conforme à la norme ESM.
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;
import WebMap from &quot;@arcgis/core/WebMap.js&quot;;
import FeatureLayer from &quot;@arcgis/core/layers/FeatureLayer.js&quot;;
&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;CDN avec require()&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  L&#39;approche historique, c&#39;est de charger le SDK directement depuis le CDN
  d’Esri en utilisant le format AMD et la fonction require().&lt;br /&gt;Cette méthode
  historique reste prise en charge, mais elle présente certaines limites pour
  les workflows JavaScript modernes, notamment lorsqu’il s’agit de
  code-splitting ou d’imports dynamiques.
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;script src=&quot;https://js.arcgis.com/4.33/&quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script&amp;gt;
  require([&quot;esri/WebMap&quot;, &quot;esri/layers/FeatureLayer&quot;], function (WebMap, FeatureLayer) {
    const map = new WebMap({ basemap: &quot;topo-vector&quot; });
    const layer = new FeatureLayer({ 
      url: &quot;https://services.arcgis.com/P3ePLMYs2RVChkJx/arcgis/rest/services/ACS_Housing_Tenure_by_Heating_Fuel_Boundaries/FeatureServer/1&quot; 
    });
  });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;
  Si vous développez actuellement vos applications avec des modules AMD ou à
  l’aide d’un outil de build compatible AMD, il est recommandé de migrer vers
  $arcgis.import() ou vers les modules ES (ESM) et des outils de build modernes.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;CDN avec $arcgis.import()&lt;/span&gt;&lt;/h4&gt;
  $arcgis.import() est un chargeur de modules basé sur des promesses, disponible
  uniquement pour les applications hébergées via le CDN.&lt;br /&gt;Il est intégré
  directement au SDK et accepte un module unique ou un tableau de chemins de
  modules, puis renvoie une promesse qui se résout une fois les modules chargés.
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;script type=&quot;module&quot;&amp;gt;
  const [Map, FeatureLayer] = await $arcgis.import([
    &quot;@arcgis/core/Map.js&quot;,
    &quot;@arcgis/core/layers/FeatureLayer.js&quot;
  ]);

  const map = new Map({ basemap: &quot;topo-vector&quot; });
  const layer = new FeatureLayer({ 
    url: &quot;https://services.arcgis.com/P3ePLMYs2RVChkJx/arcgis/rest/services/ACS_Housing_Tenure_by_Heating_Fuel_Boundaries/FeatureServer/1&quot; 
  });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Remarquez que cette méthode utilise le format de chemin ES modules
  (@arcgis/core/...) au lieu des chemins AMD traditionnels (esri/...).&lt;br /&gt;Contrairement
  aux applications AMD classiques qui s’appuient sur la fonction globale
  require(), $arcgis.import() ne nécessite aucun import global. Il fonctionne de
  manière transparente dans les environnements modernes basés sur des modules
  ES.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Exemples d’utilisation&lt;/span&gt;&lt;/h3&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Charger un seul module
&lt;/span&gt;&lt;/h4&gt;&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;script type=&quot;module&quot;&amp;gt;
  const Graphic = await $arcgis.import(&quot;@arcgis/core/Graphic.js&quot;);

  const graphic = new Graphic({ /* ... */ });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;h4 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Charger plusieurs modules&lt;/span&gt;&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&amp;lt;script type=&quot;module&quot;&amp;gt;
  const [Map, Multipoint, FeatureLayer] = await $arcgis.import([
    &quot;@arcgis/core/Map.js&quot;,
    &quot;@arcgis/core/geometry/Multipoint.js&quot;,
    &quot;@arcgis/core/layers/FeatureLayer.js&quot;
  ]);
&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Cas d’usage : lazy loading&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  $arcgis.import() offre une syntaxe plus claire pour les modèles de chargement
  dynamique et conditionnel de modules, comparée aux approches AMD basées sur
  des fonctions de rappel (callbacks). Ce niveau de flexibilité est difficile à
  atteindre avec les blocs require traditionnels de l’AMD.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Le chargement dynamique&lt;/b&gt;
  de modules permet de ne charger un module que lorsqu’il est nécessaire, ce qui
  améliore les performances de chargement initial de l’application.&lt;br /&gt;Dans
  l’exemple ci-dessous, le module FeatureLayer est chargé dynamiquement lorsque
  l’utilisateur clique sur un bouton :&amp;nbsp;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;script type=&quot;module&quot;&amp;gt;
  document.getElementById(&quot;loadButton&quot;).addEventListener(&quot;click&quot;, async () =&amp;gt; {
    const FeatureLayer = await $arcgis.import(&quot;@arcgis/core/layers/FeatureLayer.js&quot;);
    const layer = new FeatureLayer({ url: &quot;https://services.arcgis.com/...&quot; });
    map.add(layer);
  });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;b&gt;Le chargement conditionnel&lt;/b&gt; de modules permet quant à lui de charger
  différents modules selon les conditions d’exécution.&lt;br /&gt;Par exemple, il est
  possible de charger des couches différentes en fonction du niveau de zoom de
  la carte&amp;nbsp;:
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;
&amp;lt;script type=&quot;module&quot;&amp;gt;
  const Map = await $arcgis.import(&quot;@arcgis/core/Map.js&quot;);

  view.watch(&quot;zoom&quot;, async (zoom) =&amp;gt; {
    if (zoom &amp;gt; 10) {
      const FeatureLayer = await $arcgis.import(&quot;@arcgis/core/layers/FeatureLayer.js&quot;);
      // Load city-level layer
    } else {
      const GraphicsLayer = await $arcgis.import(&quot;@arcgis/core/layers/GraphicsLayer.js&quot;);
      // Load country-level layer
    }
  });
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Migration depuis require()&lt;/span&gt;&lt;/h3&gt;
  Si vous utilisez encore le CDN avec require(), c’est le bon moment pour passer
  à $arcgis.import(). Bonne nouvelle : $arcgis.import() coexiste avec require(),
  ce qui permet une migration progressive.&lt;br /&gt;Il suffit de :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;remplacer les appels require() par await $arcgis.import() ;&lt;/li&gt;
    &lt;li&gt;utiliser la déstructuration de tableau pour récupérer les modules ;&lt;/li&gt;
    &lt;li&gt;ajouter type=&quot;module&quot; dans les balises &amp;lt;script&amp;gt; ;&lt;/li&gt;
    &lt;li&gt;remplacer les callbacks d’erreur par des blocs try/catch.&lt;/li&gt;
  &lt;/ul&gt;&lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Prochaines étapes&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;Essayez $arcgis.import() dans vos applications utilisant le CDN.&lt;/li&gt;
      &lt;li&gt;
        Utilisez-le pour charger des modules de façon dynamique, en fonction des
        interactions utilisateur ou des changements d’itinéraire.
      &lt;/li&gt;
      &lt;li&gt;
        Consultez les
        &lt;a href=&quot;https://developers.arcgis.com/javascript/latest/sample-code/&quot; target=&quot;_blank&quot;&gt;exemples&lt;/a&gt;
        qui illustrent ce nouveau modèle.
      &lt;/li&gt;
    &lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/simplifiez-le-chargement-des-modules.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEit3gNysF7xKxGheBDpwTkLHxOOCB4G9jY6Z-BYakTHYliznHdmElMBTr6q5ORyW0qMj7hRcPw_bxdfFXf-abKqnRdPB6HwYQdckyiZvy_WaV7iZ3vwXTq5ZLvrBCxtq3aCG_dWUFWPpRTaqPi_0aWLRHwOdxQbX7_v2z0SLkGrH7EiaQuubNlep42PMZHj/s72-c/minia_arcgisimport-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-4650571833945062278</guid><pubDate>Fri, 17 Oct 2025 08:39:00 +0000</pubDate><atom:updated>2025-10-17T10:48:40.507+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Location services</category><category domain="http://www.blogger.com/atom/ns#">Map Libre</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><title>Esri annonce un nouveau plugin ArcGIS pour MapLibre GL JS</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizwVilJS_SUZVFQTWa-aGGk9TU6KGHSjhhkKb16rq4batLA136DhAiOItWgnwooHuhsQec_SPUTKINTAJ3dMqKuxB5-DBdWG_hazaBdjuFL7G9aPWXBzwkEy4_iw_FzqI__1uVumMUKN6dXAkT3PbdpP0edXs82gAGnllAf-0i9ywVt4LiiZNus6iM_ex2/s16000/maplibreplugin-min.jpg&quot; style=&quot;display: none;&quot; /&gt;Esri a annoncé la sortie du plugin MapLibre ArcGIS, un nouveau plugin open
  source destiné aux développeurs web qui souhaitent utiliser MapLibre GL JS
  avec ArcGIS.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Ce plugin facilite la création d’applications cartographiques interactives en
  intégrant MapLibre GL JS aux services ArcGIS.&lt;br /&gt;Si vous utilisez
  &lt;a href=&quot;https://location.arcgis.com/&quot; target=&quot;_blank&quot;&gt;ArcGIS Location Platform&lt;/a&gt;, il ouvre également de nouvelles possibilités pour la façon dont vos
  applications consomment les fonds de carte.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le plugin est vient avec de nombreuses
  ressources : un
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/&quot; target=&quot;_blank&quot;&gt;guide du développeur&lt;/a&gt;, des
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/tutorials/&quot; target=&quot;_blank&quot;&gt;tutoriels&lt;/a&gt;
  et la documentation de référence API.
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizwVilJS_SUZVFQTWa-aGGk9TU6KGHSjhhkKb16rq4batLA136DhAiOItWgnwooHuhsQec_SPUTKINTAJ3dMqKuxB5-DBdWG_hazaBdjuFL7G9aPWXBzwkEy4_iw_FzqI__1uVumMUKN6dXAkT3PbdpP0edXs82gAGnllAf-0i9ywVt4LiiZNus6iM_ex2/s2871/maplibreplugin-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1702&quot; data-original-width=&quot;2871&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizwVilJS_SUZVFQTWa-aGGk9TU6KGHSjhhkKb16rq4batLA136DhAiOItWgnwooHuhsQec_SPUTKINTAJ3dMqKuxB5-DBdWG_hazaBdjuFL7G9aPWXBzwkEy4_iw_FzqI__1uVumMUKN6dXAkT3PbdpP0edXs82gAGnllAf-0i9ywVt4LiiZNus6iM_ex2/s16000/maplibreplugin-min.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Obtenir le plugin&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Vous pouvez ajouter le plugin directement à vos projets MapLibre GL JS en
  installant le
  &lt;a href=&quot;https://www.npmjs.com/package/@esri/maplibre-arcgis&quot; target=&quot;_blank&quot;&gt;package NPM&lt;/a&gt;
  ou en référençant la bibliothèque depuis le CDN.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;h4&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;NPM&lt;/span&gt;&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;npm install @esri/maplibre-arcgis&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;CDN&lt;/span&gt;&lt;/h4&gt;&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;script src=&quot;https://unpkg.com/@esri/maplibre-arcgis@1.0.0/dist/umd/maplibre-arcgis.min.js&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Afficher des styles de fonds de carte&lt;/span&gt;
  &lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le plugin prend en charge l’utilisation de tokens pour afficher les styles
  provenant du service
  &lt;a href=&quot;https://developers.arcgis.com/rest/basemap-styles/&quot; target=&quot;_blank&quot;&gt;ArcGIS Basemap Styles&lt;/a&gt;. C’est ce qu’on appelle le
  &lt;a href=&quot;https://developers.arcgis.com/documentation/mapping-and-location-services/mapping/basemaps/basemap-usage-styles/#tile-usage-model&quot; target=&quot;_blank&quot;&gt;modèle d’utilisation “basemap tiles”&lt;/a&gt;
  (tuiles de fonds de carte). Avec
  &lt;a href=&quot;https://location.arcgis.com/&quot; target=&quot;_blank&quot;&gt;ArcGIS Location Platform&lt;/a&gt;, la consommation est comptabilisée selon le nombre de tuiles consommées.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour afficher un fond de carte avec ce modèle, utilisez la classe
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/api-reference/BasemapStyle/&quot; target=&quot;_blank&quot;&gt;BasemapStyle&lt;/a&gt;
  avec un token. Cette classe permet d’accéder à l’ensemble des styles de fond
  de carte ArcGIS et Open. Vous pouvez aussi changer facilement de style ou
  mettre à jour ces préférences après le chargement de la carte.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjua9Oh6kcjP5tKFPvm1kIG8fim6WtGXKsda1Qux37QvFCGhwkcrUaqXmue3ReMwtnD3JiSPEZmn5tr0gxG0WBY3qVyrvPjA5Hl3MCaIHyT0F4VqePYHVcYQGwpjmwMD2sC4vQgkYHZOfGNngJ1wryCeuOVhL-VExqkjBXMn2L3Bi1cx3if07SanDgmKTml/s1000/basemap-1.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;446&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjua9Oh6kcjP5tKFPvm1kIG8fim6WtGXKsda1Qux37QvFCGhwkcrUaqXmue3ReMwtnD3JiSPEZmn5tr0gxG0WBY3qVyrvPjA5Hl3MCaIHyT0F4VqePYHVcYQGwpjmwMD2sC4vQgkYHZOfGNngJ1wryCeuOVhL-VExqkjBXMn2L3Bi1cx3if07SanDgmKTml/s16000/basemap-1.gif&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;const map = new maplibregl.Map({
  container: &quot;map&quot;, // the id of the div element
  center: [-122.402, 37.789], // San Francisco, CA
  zoom: 11, // starting zoom
});

const basemapStyle = maplibreArcGIS.BasemapStyle.applyStyle(map, {
  style: &#39;arcgis/streets&#39;,
  token: accessToken
});&lt;/code&gt;&lt;/pre&gt;
  &lt;div&gt;Retrouvez le tutoriel &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/maps/how-to-display-a-basemap-style/&quot; target=&quot;_blank&quot;&gt;ici&lt;/a&gt;.&lt;/div&gt;&lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Gérer les sessions de fonds de carte&lt;/span&gt;
  &lt;/h3&gt;
  Si vous utilisez ArcGIS Location Platform, le plugin prend aussi en charge le
  &lt;a href=&quot;https://developers.arcgis.com/documentation/mapping-and-location-services/mapping/basemaps/basemap-usage-styles/#session-usage-model&quot; target=&quot;_blank&quot;&gt;modèle d’utilisation “basemap sessions”&lt;/a&gt;
  (sessions de fond de carte).&lt;br /&gt;Ce modèle permet à votre application
  d’accéder à un nombre illimité de tuiles pendant une session pouvant durer
  jusqu&#39;à 12 heures, facturée comme une seule utilisation.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour créer des applications avec ce modèle, utilisez les classes
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/api-reference/BasemapSession/&quot; target=&quot;_blank&quot;&gt;BasemapSession&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/api-reference/BasemapStyle/&quot; target=&quot;_blank&quot;&gt;BasemapStyle&lt;/a&gt;.&lt;br /&gt;Elles facilitent la création et la gestion des sessions, le
  rafraîchissement automatique du token, et la mise à jour des tuiles selon les
  besoins.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiH450x0EZ4knO-zAHtvzuq2MVQTB-DAyp-bLw6fDsgENmDNbpEi0oDsLVfjzZGqYSELuHH-02ob7mj6epiGzCa4qRTtfu3pthIODOOcy_QZY0jvd3c3G1bgDm_SWyKEDjmxu9rLZIcXvPsaF2MZIlkGP6RKi3iLFLkwQSyz674ebyR026M97Q6ujKgS4CL/s1000/session.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;446&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiH450x0EZ4knO-zAHtvzuq2MVQTB-DAyp-bLw6fDsgENmDNbpEi0oDsLVfjzZGqYSELuHH-02ob7mj6epiGzCa4qRTtfu3pthIODOOcy_QZY0jvd3c3G1bgDm_SWyKEDjmxu9rLZIcXvPsaF2MZIlkGP6RKi3iLFLkwQSyz674ebyR026M97Q6ujKgS4CL/s16000/session.gif&quot; /&gt;&lt;/a&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;const map = new maplibregl.Map({
  container: &quot;map&quot;,
  zoom: 11,
  center: [-3.189, 55.953] // Edinburgh
});

const basemapSession = await maplibreArcGIS.BasemapSession.start({
  token: accessToken,
  styleFamily: &#39;arcgis&#39;,
  duration: 43200, // 12 hours in seconds
  autoRefresh: false
});

basemapSession.on(&quot;BasemapSessionExpired&quot;, () =&amp;gt; {
  basemapSession.refresh()
});

const basemapStyle = maplibreArcGIS.BasemapStyle.applyStyle(map, {
  style: &#39;arcgis/community&#39;,
  session: basemapSession
});&lt;/code&gt;&lt;/pre&gt;Retrouvez le tutoriel &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/maps/how-to-display-a-map-with-a-basemap-session/&quot; target=&quot;_blank&quot;&gt;ici&lt;/a&gt;.
  &lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Accéder et afficher des couches hébergées&lt;/span&gt;
  &lt;/h3&gt;
  Le plugin permet également d’accéder à des couches hébergées dans votre
  portail ArcGIS à partir de l&#39;URL du service ou de l&#39;ID de l&#39;item. Une fois les
  couches ajoutées à votre carte, vous pouvez enrichir votre application avec
  des interactions comme des fenêtres contextuelles affichant les attributs des
  entités.&lt;br /&gt;&lt;br /&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Feature layers&lt;/span&gt;&lt;/h4&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour afficher des couches d’entités hébergées, utilisez la classe
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/api-reference/FeatureLayer/&quot; target=&quot;_blank&quot;&gt;FeatureLayer&lt;/a&gt;. Elle permet d’afficher toutes les entités ou d’en récupérer un
  sous-ensemble via des requêtes SQL ou spatiales. Elle gère les styles
  prédéfinis et expose les données en tant que sources GeoJSON. Vous pouvez
  aussi personnaliser le rendu des entités directement dans votre application.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdV-9fXDnWEuuxxQasg2Q2P6pQW7jOiwicZFL1RTOrR9ZfjjUJuMHXNIUIq0Ndn3e6W4VHr3SJHoHnZGsoA14xIYgeWP3gcWCIBiNl3nW_g8wU1QYZaqYsGoynjnNXyOP6fFgElPQGwR_VzZ8qyElxbQZYN4geRIpE_RBO_YASZagHY6_B01Wc01SW3p-M/s1000/fl.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;446&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdV-9fXDnWEuuxxQasg2Q2P6pQW7jOiwicZFL1RTOrR9ZfjjUJuMHXNIUIq0Ndn3e6W4VHr3SJHoHnZGsoA14xIYgeWP3gcWCIBiNl3nW_g8wU1QYZaqYsGoynjnNXyOP6fFgElPQGwR_VzZ8qyElxbQZYN4geRIpE_RBO_YASZagHY6_B01Wc01SW3p-M/s16000/fl.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;map.once(&quot;load&quot;, async () =&amp;gt; {
  // Get GeoJSON features from a feature service where `POPULATION &amp;gt; 250000`
  const featureLayer = await maplibreArcGIS.FeatureLayer.fromUrl(
    &quot;https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/USA_Major_Cities/FeatureServer/0&quot;,
    {
      query: {
        where: &#39;POPULATION&amp;gt;250000&#39;
      },
      token: accessToken
    }
  );

  map.addSource(featureLayer.sourceId, {
    ...featureLayer.source,
    cluster: true,
    clusterRadius: 20, // cluster two trailheads if less than 20 pixels apart
    clusterMaxZoom: 14, // display all trailheads individually from zoom 14 up
  });

  map.addLayer({
    ...featureLayer.layer,
    id: &quot;city-clusters&quot;,
    type: &quot;circle&quot;,
    paint: {
      &quot;circle-color&quot;: &quot;hsla(0,0%,0%,0.75)&quot;,
      &quot;circle-stroke-width&quot;: 1.5,
      &quot;circle-stroke-color&quot;: &quot;white&quot;,
      &quot;circle-radius&quot;: [&quot;case&quot;, [&quot;get&quot;, &quot;cluster&quot;], 10, 5] // 10 pixels for clusters, 5 pixels otherwise
    }
  });

});&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Retrouvez le tutoriel &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/data/how-to-create-and-style-features/&quot;&gt;ici&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Vector tile layers&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour afficher des couches de tuiles vectorielles hébergées, utilisez la classe
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/api-reference/VectorTileLayer/&quot; target=&quot;_blank&quot;&gt;VectorTileLayer&lt;/a&gt;. Elle charge et applique automatiquement les styles enregistrés avec
  l’élément.&lt;br /&gt;Vous pouvez styliser vos tuiles vectorielles avec des outils
  interactifs comme par exemple l&#39;&lt;a href=&quot;https://www.esri.com/arcgis-blog/products/platform/announcements/basemap-sessions&quot; target=&quot;_blank&quot;&gt;ArcGIS Vector Tile Style Editor&lt;/a&gt;, puis les enregistrer dans le portail et les réutiliser dans votre
  application sans écrire de code côté client.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh_JzbLuNOI8y-XPJVMZUFK6xbayXtZIygzFzPOeT5rZXmubZ2yzAZQTGnhG6m89cTb8GZG_WqwTQ-lnnffBUK-TrVg4_eYb28tHQLs3SzrHJm0qpV1jwTRsvVX-YqentokY4csUqrnZAmQqOfwwYMvRk7TymMkIYHzlN2ogReH_inD-IQKwHIlt-eAeNl/s1000/vtl-1.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;446&quot; data-original-width=&quot;1000&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh_JzbLuNOI8y-XPJVMZUFK6xbayXtZIygzFzPOeT5rZXmubZ2yzAZQTGnhG6m89cTb8GZG_WqwTQ-lnnffBUK-TrVg4_eYb28tHQLs3SzrHJm0qpV1jwTRsvVX-YqentokY4csUqrnZAmQqOfwwYMvRk7TymMkIYHzlN2ogReH_inD-IQKwHIlt-eAeNl/s16000/vtl-1.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;&lt;pre&gt;&lt;code class=&quot;language-js&quot;&gt;const basemapStyle = maplibreArcGIS.BasemapStyle.applyStyle(map, {
  style: &#39;arcgis/light-gray&#39;,
  token: accessToken
});

map.on(&#39;load&#39;, async () =&amp;gt; {
  const vectorLayer = await maplibreArcGIS.VectorTileLayer.fromPortalItem(
    &#39;31eb749371c441e0b3ac5db4f60ecba9&#39;,
    { token: accessToken }
  );
  vectorLayer.addSourcesAndLayersTo(map);
});&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;Retrouvez le tutoriel &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/data/how-to-create-and-style-vector-tiles/&quot;&gt;ici&lt;/a&gt;.&lt;/div&gt;&lt;h3 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Pour aller plus loin&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Découvrez les différents types d’applications que vous pouvez créer avec le
  plugin dans les tutoriels et guides pratiques du
  &lt;a href=&quot;https://developers.arcgis.com/maplibre-gl-js/&quot; target=&quot;_blank&quot;&gt;guide du développeur MapLibre GL JS et ArcGIS&lt;/a&gt;.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Si vous avez des questions, souhaitez proposer des améliorations ou contribuer
  au code, rendez-vous sur le
  &lt;a href=&quot;https://github.com/Esri/maplibre-arcgis&quot; target=&quot;_blank&quot;&gt;repo GitHub&lt;/a&gt;
  du plugin.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Et pour commencer à créer vos propres applications avec le plugin et ArcGIS
  Location Services, vous pouvez créer facilement un compte sur
  &lt;a href=&quot;https://location.arcgis.com/sign-up/&quot; target=&quot;_blank&quot;&gt;ArcGIS Location Platform&lt;/a&gt;.
&lt;/div&gt;

</description><link>https://www.codethemap.fr/2025/10/esri-annonce-un-nouveau-plugin-arcgis.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizwVilJS_SUZVFQTWa-aGGk9TU6KGHSjhhkKb16rq4batLA136DhAiOItWgnwooHuhsQec_SPUTKINTAJ3dMqKuxB5-DBdWG_hazaBdjuFL7G9aPWXBzwkEy4_iw_FzqI__1uVumMUKN6dXAkT3PbdpP0edXs82gAGnllAf-0i9ywVt4LiiZNus6iM_ex2/s72-c/maplibreplugin-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-7906300177646953592</guid><pubDate>Tue, 14 Oct 2025 09:26:00 +0000</pubDate><atom:updated>2025-10-14T11:31:03.452+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Calcite</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><title>Une UI toujours plus riche pour vos applications : version 3.3 du Calcite Design System</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK7fqqyV3djPKL9hyphenhyphenkdMWt1A-kfFVUfgeFx55fiMpcN3PWjBiR8m0SK0M-4RBtsgWlmvyZZN5XIQuUeKUuVpMXvyGxPA9f8xyur2_TU3LoP8Ud9bD3IzhpRodmkGOJ8Gv2MwSiQDgTLDrddRVONzUSoTclBMWErrfRiAOlNwMkIgsfW5fr396xqfsWF8HM/s16000/calcite_design_system_3_3.png&quot; style=&quot;display: none;&quot; /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La version 3.3 de Calcite Design System apporte de nombreuses améliorations :
  de nouveaux composants, davantage de tokens pour la personnalisation visuelle,
  des événements étendus, et plusieurs mises à jour d’accessibilité et
  d’internationalisation.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Depuis la version 3.2, Esri a ajouté des design tokens pour personnaliser les
  composants via des variables CSS, renforcé la cohérence entre les composants,
  introduit de nouvelles fonctionnalités et amélioré de nombreux détails du
  framework.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK7fqqyV3djPKL9hyphenhyphenkdMWt1A-kfFVUfgeFx55fiMpcN3PWjBiR8m0SK0M-4RBtsgWlmvyZZN5XIQuUeKUuVpMXvyGxPA9f8xyur2_TU3LoP8Ud9bD3IzhpRodmkGOJ8Gv2MwSiQDgTLDrddRVONzUSoTclBMWErrfRiAOlNwMkIgsfW5fr396xqfsWF8HM/s1920/calcite_design_system_3_3.png&quot; style=&quot;display: none; margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK7fqqyV3djPKL9hyphenhyphenkdMWt1A-kfFVUfgeFx55fiMpcN3PWjBiR8m0SK0M-4RBtsgWlmvyZZN5XIQuUeKUuVpMXvyGxPA9f8xyur2_TU3LoP8Ud9bD3IzhpRodmkGOJ8Gv2MwSiQDgTLDrddRVONzUSoTclBMWErrfRiAOlNwMkIgsfW5fr396xqfsWF8HM/s16000/calcite_design_system_3_3.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Swatch et Swatch Group&lt;/span&gt;&lt;/h3&gt;
  Les nouveaux composants
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/swatch/&quot; target=&quot;_blank&quot;&gt;Swatch&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/swatch-group/&quot; target=&quot;_blank&quot;&gt;Swatch Group&lt;/a&gt;
  permettent d’afficher des collections d’éléments graphiques, idéales pour des
  workflows de sélection de couleur.&lt;br /&gt;Ils prennent en charge les couleurs,
  images et motifs, dans des modes de sélection simples ou multiples.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Voici leurs principales caractéristiques :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Support de la navigation au clavier pour une meilleure accessibilité.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  États visuels : actif, sélectionné et désactivé.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Intégration directe avec le Color Picker, garantissant la cohérence dans tout
  le design system.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDiIo4VHF72RT8Tcg5YK0MnwyAp63wWLCoPm5PIqUiPJGhX61p1WXlQfdQUNO11Ugq3_CH0S_UZWj-G3j0JqSs9_ojH4Rl-U1xlbtK9_uX0_Nwk1OBjnPfIme1ovX6vRTnSll7zYJbww6rRqglAQ95NQBovg6X5roUp33hOJLKtBokB-hCFV-gy49ouJdE/s578/swatch-group-single-select.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;106&quot; data-original-width=&quot;578&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDiIo4VHF72RT8Tcg5YK0MnwyAp63wWLCoPm5PIqUiPJGhX61p1WXlQfdQUNO11Ugq3_CH0S_UZWj-G3j0JqSs9_ojH4Rl-U1xlbtK9_uX0_Nwk1OBjnPfIme1ovX6vRTnSll7zYJbww6rRqglAQ95NQBovg6X5roUp33hOJLKtBokB-hCFV-gy49ouJdE/s16000/swatch-group-single-select.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/tokens/usage/#component-tokens&quot; target=&quot;_blank&quot;&gt;Component tokens&lt;/a&gt;&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Tous les composants du design system disposent désormais de component tokens.
  Avec la version 3.3, des tokens ont été ajoutés pour :
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/color-picker/#styles&quot; target=&quot;_blank&quot;&gt;Color Picker&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/dialog/#styles&quot; target=&quot;_blank&quot;&gt;Dialog&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/popover/#styles&quot; target=&quot;_blank&quot;&gt;Popover&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/table/#styles&quot; target=&quot;_blank&quot;&gt;Table&lt;/a&gt;.&lt;br /&gt;Ces tokens offrent un contrôle plus précis de l’apparence visuelle.
  Ils permettent, par exemple, de modifier la couleur de fond, la bordure ou le
  rayon d’un Color Picker directement via des variables CSS, sans avoir à
  surcharger le style global.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les design tokens servent de référentiel unique pour la cohérence visuelle :
  ils centralisent les couleurs, espacements, tailles et ombres utilisés dans
  Calcite. En les exploitant, vous garantissez une apparence homogène entre vos
  applications, tout en facilitant la création et l’évolution de vos thèmes
  personnalisés.&amp;nbsp;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Pour plus d&#39;informations, consultez la documentation sur l&#39;&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/tokens/usage/&quot;&gt;utilisation des tokens&lt;/a&gt;
  et le
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/tokens/reference/&quot; target=&quot;_blank&quot;&gt;guide de référence des design tokens&lt;/a&gt;.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcDj5vm5acjd58MTwkXoUIiC_YuQUbE87DOavEVHi7LmHprt_tJHIWM9Nxa9xCQJ3y321oh1RSSsXRJjw-Uab8pZR3nHQms-OGtbuP9nL-NLrhv1-0KP7neh-b4zx_kYUidBo3hZimqU6vNYNewnCsQsNQ9-RU8oEeQb3VtKWjvxtHTyFg2pSEtCgUrCH_/s572/color-picker-themed.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;572&quot; data-original-width=&quot;420&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcDj5vm5acjd58MTwkXoUIiC_YuQUbE87DOavEVHi7LmHprt_tJHIWM9Nxa9xCQJ3y321oh1RSSsXRJjw-Uab8pZR3nHQms-OGtbuP9nL-NLrhv1-0KP7neh-b4zx_kYUidBo3hZimqU6vNYNewnCsQsNQ9-RU8oEeQb3VtKWjvxtHTyFg2pSEtCgUrCH_/s16000/color-picker-themed.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;style&amp;gt;
  #themed {
    --calcite-color-picker-background-color: #fff5fb;
    --calcite-color-picker-border-color: #eda1c6;
    --calcite-color-picker-corner-radius: 12px;
  }
&amp;lt;/style&amp;gt;

&amp;lt;calcite-color-picker id=&quot;themed&quot; alpha-channel&amp;gt;&amp;lt;/calcite-color-picker&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Étiquettes intégrées dans les formulaires&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Les composants basés sur des formulaires, comme par exemple
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-date-picker/&quot; target=&quot;_blank&quot;&gt;Input Date Picker&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-number/&quot; target=&quot;_blank&quot;&gt;Input Number&lt;/a&gt;, disposent désormais d’étiquettes intégrées.&lt;br /&gt;Elles peuvent inclure un
  indicateur visuel et une infobulle pour les champs obligatoires, ainsi qu’un
  attribut aria-required pour les technologies d’assistance.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/label/&quot; target=&quot;_blank&quot;&gt;Label&lt;/a&gt;
  introduit également un nouvel emplacement &quot;label-content&quot; permettant d’ajouter
  des icônes personnalisées.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9rS-ZL911J24nUGsNJ4XfiKPnuQygspo0xq0Mk1v3MH-2kMVzd9v7_R58_F03_QrEcRBgX6TxNipCYxGYX7fMNWVnGy9FxOcMQEvVnqu6M1oW-b9_5EuqWa9kR2Nysb2seJEpM7VzTu0eG2MNbn-JMZrQGYOZsxlwOfpY6-hGkdrBBw7nak7A1L7OCjaN/s800/form-components-built-in-labels.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;246&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9rS-ZL911J24nUGsNJ4XfiKPnuQygspo0xq0Mk1v3MH-2kMVzd9v7_R58_F03_QrEcRBgX6TxNipCYxGYX7fMNWVnGy9FxOcMQEvVnqu6M1oW-b9_5EuqWa9kR2Nysb2seJEpM7VzTu0eG2MNbn-JMZrQGYOZsxlwOfpY6-hGkdrBBw7nak7A1L7OCjaN/s16000/form-components-built-in-labels.gif&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Nouveaux événements expanded et collapsed&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: small;&quot;&gt;Les composants
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/accordion-item/&quot; target=&quot;_blank&quot;&gt;Accordion Item&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/action-bar/&quot; target=&quot;_blank&quot;&gt;Action Bar&lt;/a&gt;,
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/block/&quot; target=&quot;_blank&quot;&gt;Block&lt;/a&gt;
    et
    &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/list-item/&quot; target=&quot;_blank&quot;&gt;List Item&lt;/a&gt;
    émettent désormais des événements expanded et collapsed, tels que
    calciteActionBarExpand et calciteActionBarCollapse.&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: small;&quot;&gt;&lt;span&gt;Ces événements de cycle de vie permettent de suivre les changements
      d’état et d’y réagir — par exemple pour synchroniser des animations, gérer
      le focus ou coordonner l’état d’autres composants dans
      l’interface.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDwmoJR8rksS9TuNkqApPTkuxnA6sZZxOlWdbBHyYZqkz5asxUjR527-57aT1AAr8ypqmM-MZk2V45cVwPux6lTKNYPAGGLmi6gUO38uu8yxjzzhnVMyVFidR2flh9igqjlktW1-h_-4yH1zAZWnoEyCySD0UkP6HaKX5XzdKc7SneeNY_lhh7eHUjxCfM/s800/action-bar-expand-and-collapse.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;237&quot; data-original-width=&quot;800&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDwmoJR8rksS9TuNkqApPTkuxnA6sZZxOlWdbBHyYZqkz5asxUjR527-57aT1AAr8ypqmM-MZk2V45cVwPux6lTKNYPAGGLmi6gUO38uu8yxjzzhnVMyVFidR2flh9igqjlktW1-h_-4yH1zAZWnoEyCySD0UkP6HaKX5XzdKc7SneeNY_lhh7eHUjxCfM/s16000/action-bar-expand-and-collapse.gif&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    Vue à un mois pour le Date Picker&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/date-picker/&quot; target=&quot;_blank&quot;&gt;Date Picker&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-date-picker/&quot; target=&quot;_blank&quot;&gt;Input Date Picker&lt;/a&gt;
  disposent désormais d’une propriété calendars pour afficher une vue à un mois
  ou deux mois (1 ou 2).
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Lorsqu’un intervalle de dates (range) est défini, la vue par défaut reste à
  deux mois, mais la nouvelle vue à un mois est idéale pour les interfaces
  mobiles ou les espaces restreints, tout en conservant la sélection de plages
  de dates.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrV98RlW3F_tEZaBh3GGOeFvb0IwOsgZwWq5tZ64cpOBg97ObwBTNUZH7U5zQBqHljRBuC3ai9fpsjGGw2y6OIeQmDXhPcbYJMgLTuqYgKjcqX1ApPg9haxCU2KEPFGC2qi8O5gPfpN7w1Vr6hsfzxHuLcJS05InZaH0EzRihoChmR6gJ69AQKe4CO8K7v/s479/date-picker-single-calendar-range-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;479&quot; data-original-width=&quot;424&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrV98RlW3F_tEZaBh3GGOeFvb0IwOsgZwWq5tZ64cpOBg97ObwBTNUZH7U5zQBqHljRBuC3ai9fpsjGGw2y6OIeQmDXhPcbYJMgLTuqYgKjcqX1ApPg9haxCU2KEPFGC2qi8O5gPfpN7w1Vr6hsfzxHuLcJS05InZaH0EzRihoChmR6gJ69AQKe4CO8K7v/s16000/date-picker-single-calendar-range-1.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Amélioration du filtrage dans le Combobox&lt;/span&gt;
  &lt;/h3&gt;
  Le
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/combobox/&quot; target=&quot;_blank&quot;&gt;Combobox&lt;/a&gt;
  affiche désormais un message “aucune correspondance” lorsqu’aucun élément ne
  correspond à la recherche.&lt;br /&gt;Si la propriété allowCustomValues est activée,
  l’utilisateur peut ajouter une nouvelle entrée personnalisée.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Cela renforce la clarté du retour utilisateur et améliore la saisie dans des
  listes longues ou dynamiques.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_OqKe3KMYj_s1GiVwD5frdnfWoPJsJAsxUZ_ESHISAFZX_qQRsPu132HqVOKvRlM0Kppn90qzXtKl1L0lt-1kLtHx4wFuX6VX0qNe7H81bkYPk1wOzi-w4to4noGSkEErQhToxSwqnuGcjgPcit5s6ZUtz0qGWxyE7_iUlR5n1s6os1o8uW0DU3x62UWe/s491/combobox-no-match-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;121&quot; data-original-width=&quot;491&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_OqKe3KMYj_s1GiVwD5frdnfWoPJsJAsxUZ_ESHISAFZX_qQRsPu132HqVOKvRlM0Kppn90qzXtKl1L0lt-1kLtHx4wFuX6VX0qNe7H81bkYPk1wOzi-w4to4noGSkEErQhToxSwqnuGcjgPcit5s6ZUtz0qGWxyE7_iUlR5n1s6os1o8uW0DU3x62UWe/s16000/combobox-no-match-1.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
  &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5Z1sfTtScWSsQY9osaM4Am07bOxIysGACxrAvPUVd44KKHK1_ZEPVkax9QdfquCkK40JsWMgJ6bdk1IclWKh8ErxcePs2fKZOlehFp6_AxTjqLHRbsL-D1Ia7KsIqDkno2S2Tb_MmrEVeJxupCjqo8nMNtXx4BxBbylIOgbVGWWiEacAVQDZP5c7otYEF/s491/combobox-no-match-custom-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;114&quot; data-original-width=&quot;491&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5Z1sfTtScWSsQY9osaM4Am07bOxIysGACxrAvPUVd44KKHK1_ZEPVkax9QdfquCkK40JsWMgJ6bdk1IclWKh8ErxcePs2fKZOlehFp6_AxTjqLHRbsL-D1Ia7KsIqDkno2S2Tb_MmrEVeJxupCjqo8nMNtXx4BxBbylIOgbVGWWiEacAVQDZP5c7otYEF/s16000/combobox-no-match-custom-1.png&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h3&gt;
    &lt;span style=&quot;font-size: x-large;&quot;&gt;Nouvelle propriété fieldDisabled du Color Picker&lt;/span&gt;
  &lt;/h3&gt;
  Le
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/color-picker/&quot; target=&quot;_blank&quot;&gt;Color Picker&lt;/a&gt;
  inclut désormais une propriété booléenne fieldDisabled permettant de
  désactiver la partie supérieure de la zone de couleur.&lt;br /&gt;Cette option est
  utile sur mobile, dans des interfaces compactes ou lorsque le graphique n’est
  pas nécessaire.&amp;nbsp;
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1IVkWSaVt4wO4cp938D-rW5y-Iy9z8iDmAWY3aj0qs496x4JzpWWCqcPP1Hhp5CAgXuzm2syw7dyTS5HKrTij7MIBGPi0oEH7z0oeECLIAW60jmC8y88V3NEY5aIxUsjLXPTO8_YZCa62U8GYw0PGsiFg9jQeRPUWoZJ_tl7a8kae330E1CBK-LI-iXoN/s403/color-picker-field-disabled-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;339&quot; data-original-width=&quot;403&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1IVkWSaVt4wO4cp938D-rW5y-Iy9z8iDmAWY3aj0qs496x4JzpWWCqcPP1Hhp5CAgXuzm2syw7dyTS5HKrTij7MIBGPi0oEH7z0oeECLIAW60jmC8y88V3NEY5aIxUsjLXPTO8_YZCa62U8GYw0PGsiFg9jQeRPUWoZJ_tl7a8kae330E1CBK-LI-iXoN/s16000/color-picker-field-disabled-1.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Améliorations des Accordion Item&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/accordion-item/&quot; target=&quot;_blank&quot;&gt;Accordion Item&lt;/a&gt;
  ajoute deux nouveaux emplacements de contenu : &quot;content-start&quot; et
  &quot;content-end&quot;.&lt;br /&gt;Ils permettent d’ajouter des éléments comme des
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/chip/&quot; target=&quot;_blank&quot;&gt;Chips&lt;/a&gt;
  ou des icônes de part et d’autre du titre et de la description.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdxPzGh_n0HeXiM1CD-aKXvyvZ1RQWryVE9ERXRrlOQ7p86b7vKUvvuR2nVhkh6fxbbIZ5gt8DA-ymaTXmoZfYTMAMw8wEn_RuMsn87vyhN6IJo-vWYDqvAxChKuw1yqxYYNVwblkBWTVoxIbz_WV4hpE6VVsLkY4vC-4S7kJrGuVHWNlW98PocqM0Fpgh/s902/accordion-item-content-slots-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;92&quot; data-original-width=&quot;902&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdxPzGh_n0HeXiM1CD-aKXvyvZ1RQWryVE9ERXRrlOQ7p86b7vKUvvuR2nVhkh6fxbbIZ5gt8DA-ymaTXmoZfYTMAMw8wEn_RuMsn87vyhN6IJo-vWYDqvAxChKuw1yqxYYNVwblkBWTVoxIbz_WV4hpE6VVsLkY4vC-4S7kJrGuVHWNlW98PocqM0Fpgh/s16000/accordion-item-content-slots-1.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
  Une nouvelle propriété headingLevel permet aussi de définir le niveau de titre
  (h1–h6) sans affecter le style visuel — un atout pour la structuration
  sémantique et l’accessibilité des pages.
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Accessibilité et internationalisation renforcées&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Esri continue d’améliorer l’accessibilité et la compatibilité internationale
  de Calcite afin de rendre les applications accessibles au plus grand
  nombre.&lt;br /&gt;Pour aller plus loin, consultez la page
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/foundations/accessibility/#designing-for-individuals&quot; target=&quot;_blank&quot;&gt;Designing for Individuals&lt;/a&gt;
  sur la documentation Calcite.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Voici quelques améliorations apportées par la 3.3 :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: large;&quot;&gt;Propriété &lt;code data-end=&quot;175&quot; data-start=&quot;168&quot;&gt;label&lt;/code&gt; du composant
    Input Time Picker&amp;nbsp;&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant
  &lt;span data-end=&quot;242&quot; data-start=&quot;221&quot;&gt;&lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/input-time-picker/&quot; target=&quot;_blank&quot;&gt;Input Time Picker&lt;/a&gt;&lt;/span&gt;
  inclut désormais une propriété label, qui permet d’ajouter une étiquette
  décrivant plus précisément le champ pour les technologies d’assistance (comme
  les lecteurs d’écran).&lt;br data-end=&quot;425&quot; data-start=&quot;422&quot; /&gt;
  Lorsqu’elle est renseignée, cette étiquette est annoncée à l’utilisateur,
  apportant un meilleur contexte dans les formulaires et lors de l’interaction
  avec le composant.&amp;nbsp;
&lt;/div&gt;
&lt;pre&gt;&lt;code class=&quot;language-html&quot;&gt;&amp;lt;calcite-input-time-picker
  label=&quot;2025 5k fall leaf run start time&quot;&amp;gt;
&amp;lt;/calcite-input-time-picker&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Amélioration du contraste du Date Picker&lt;/span&gt;
&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le composant Date Picker bénéficie d’un meilleur contraste de couleurs pour
  les mois et jours précédents ou suivants.&lt;br /&gt;Les différentes interactions
  (survol à la souris, sélection d’une date, etc.) offrent désormais un
  contraste renforcé, améliorant la lisibilité et l’accessibilité du composant
  pour un public plus large.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirTqWJJtUFFLFh6rdaCJRESPH1iytfZc6iB_0xLevL7X6FhijJL0ZdeFoqeA6fIMZmKlvD6sC7nKEJsvsyMXiGym7m0R-U_7FDyqWQO6lgmQ_2bsg2GYS40u5M1sZzOR5dkk5cklppBwlo6v9DO6TrHU8tb2MLUf9xONo1dLy4ihYsi4V6U35UzSKu7M0U/s400/a11y-DatePicker-ImprovedContrast-1.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;400&quot; data-original-width=&quot;353&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirTqWJJtUFFLFh6rdaCJRESPH1iytfZc6iB_0xLevL7X6FhijJL0ZdeFoqeA6fIMZmKlvD6sC7nKEJsvsyMXiGym7m0R-U_7FDyqWQO6lgmQ_2bsg2GYS40u5M1sZzOR5dkk5cklppBwlo6v9DO6TrHU8tb2MLUf9xONo1dLy4ihYsi4V6U35UzSKu7M0U/s16000/a11y-DatePicker-ImprovedContrast-1.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;h4&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Propriétés icon et iconFlipRtl&lt;/span&gt;&lt;/h4&gt;
  Les composants
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/dialog/&quot; target=&quot;_blank&quot;&gt;Dialog&lt;/a&gt;,
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/flow-item/&quot; target=&quot;_blank&quot;&gt;Flow Item&lt;/a&gt;
  et
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/panel/&quot; target=&quot;_blank&quot;&gt;Panel&lt;/a&gt;
  prennent désormais en charge les propriétés icon et iconFlipRtl, permettant
  d’ajouter des icônes adaptées à différents usages.&lt;br /&gt;Cette évolution
  garantit une meilleure cohérence visuelle entre composants (par exemple avec
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/block/&quot; target=&quot;_blank&quot;&gt;Block&lt;/a&gt;
  ou
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/components/accordion/&quot; target=&quot;_blank&quot;&gt;Accordion&lt;/a&gt;) et des icônes plus homogènes à travers le design system.
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  La propriété iconFlipRtl permet également d’inverser les icônes dans les
  interfaces bidirectionnelles (droite-à-gauche, RTL), comme les flèches de
  navigation.&lt;br /&gt;Certaines icônes, comme les logos, ne doivent toutefois pas
  être inversées.
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/resources/localization/#mirroring-icons&quot; target=&quot;_blank&quot;&gt;La documentation de Calcite&lt;/a&gt;
  explique comment gérer ces cas spécifiques.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
    &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU1jph1xt4ifA73WGtaHMVyatSkjGlBR13cRYVi93asl2Bu90x2a2-boSnJY9l_VRL2mdcsokKz3DpPTUFzSb3Z4PRLjXROFAyhy6T3RJUlGbdReG6ML7oFpQVXBgPKP494uRHccGeYsgzg9AkXkPzg1UKvYe-9RhgNXFRVtvYFaDvj6pM-xgQ7rB28SlS/s1088/dialog-icons-2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;405&quot; data-original-width=&quot;1088&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU1jph1xt4ifA73WGtaHMVyatSkjGlBR13cRYVi93asl2Bu90x2a2-boSnJY9l_VRL2mdcsokKz3DpPTUFzSb3Z4PRLjXROFAyhy6T3RJUlGbdReG6ML7oFpQVXBgPKP494uRHccGeYsgzg9AkXkPzg1UKvYe-9RhgNXFRVtvYFaDvj6pM-xgQ7rB28SlS/s16000/dialog-icons-2.png&quot; /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Pour aller plus loin&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Consultez les
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2025-09/&quot; target=&quot;_blank&quot;&gt;notes de version de septembre 2025&lt;/a&gt;
  pour découvrir la liste complète des
  &lt;a href=&quot;https://developers.arcgis.com/calcite-design-system/releases/summaries/2025-09/#changes-since-32&quot; target=&quot;_blank&quot;&gt;changements depuis la version 3.2&lt;/a&gt;
  : nouvelles fonctionnalités, corrections de bugs et dépréciations.&lt;br /&gt;
  &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Et après ?&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Calcite passera à une nouvelle version majeure début 2026, avec des
  changements potentiellement incompatibles. Esri organisera un live YouTube à
  cette occasion, consacré à :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;l’analyse des changements majeurs,&lt;/li&gt;
    &lt;li&gt;les stratégies de migration,&lt;/li&gt;
    &lt;li&gt;et les bonnes pratiques pour une mise à jour fluide.&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/une-ui-toujours-plus-riches-pour-vos.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK7fqqyV3djPKL9hyphenhyphenkdMWt1A-kfFVUfgeFx55fiMpcN3PWjBiR8m0SK0M-4RBtsgWlmvyZZN5XIQuUeKUuVpMXvyGxPA9f8xyur2_TU3LoP8Ud9bD3IzhpRodmkGOJ8Gv2MwSiQDgTLDrddRVONzUSoTclBMWErrfRiAOlNwMkIgsfW5fr396xqfsWF8HM/s72-c/calcite_design_system_3_3.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-3381657584903644906</guid><pubDate>Mon, 13 Oct 2025 09:54:00 +0000</pubDate><atom:updated>2025-10-13T11:57:18.103+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><category domain="http://www.blogger.com/atom/ns#">Mise à jour</category><title>Esri annonce le versionnage sémantique pour son SDK JavaScript ainsi que le passage à la 5.0 en 2026</title><description>&lt;p&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img
    src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitUN1ULey_oQuJlO4e3CHL6cGt18Ayb1F12WcHsf4ukM1vfQXLrTXR6m02PZ6nFmdEMZiPs9jipaAeAwbHnyEjgeGjbf32Z6s0PC2q6BBgVMKSvn8k6pw_8aGUTJp_saOvWQZDUCK8xzXnI_dyxRUD2sIGpwZN3ZM5WFkZyEENjwZe8PhN6iZtffz-kwwY/s16000/SemVer.png&quot;
    style=&quot;display: none;&quot;
  /&gt;
&lt;/p&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Esri vient d&#39;annoncer un changement majeur dans le versionnage et la
  publication de l&#39;ArcGIS Maps SDK for JavaScript, qui passe désormais au
  versionnage sémantique (SemVer). Ce changement a pour but de faciliter la vie
  des développeurs en simplifiant les montées de version, en rendant plus
  compréhensible les conséquences de chaque version et en proposant une
  meilleure intégration aux outils modernes.
  &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;display: none;&quot;&gt;
    &lt;a
      href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitUN1ULey_oQuJlO4e3CHL6cGt18Ayb1F12WcHsf4ukM1vfQXLrTXR6m02PZ6nFmdEMZiPs9jipaAeAwbHnyEjgeGjbf32Z6s0PC2q6BBgVMKSvn8k6pw_8aGUTJp_saOvWQZDUCK8xzXnI_dyxRUD2sIGpwZN3ZM5WFkZyEENjwZe8PhN6iZtffz-kwwY/s1536/SemVer.png&quot;
      imageanchor=&quot;1&quot;
      style=&quot;margin-left: 1em; margin-right: 1em;&quot;
      &gt;&lt;img
        border=&quot;0&quot;
        data-original-height=&quot;1024&quot;
        data-original-width=&quot;1536&quot;
        src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitUN1ULey_oQuJlO4e3CHL6cGt18Ayb1F12WcHsf4ukM1vfQXLrTXR6m02PZ6nFmdEMZiPs9jipaAeAwbHnyEjgeGjbf32Z6s0PC2q6BBgVMKSvn8k6pw_8aGUTJp_saOvWQZDUCK8xzXnI_dyxRUD2sIGpwZN3ZM5WFkZyEENjwZe8PhN6iZtffz-kwwY/s16000/SemVer.png&quot;
    /&gt;&lt;/a&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;
    &gt;Qu&#39;est-ce que le versionnage sémantique ?&lt;/span
  &gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Le versionnage sémantique repose sur un format simple :
  MAJEURE.MINEURE.CORRECTIF (MAJOR.MINOR.PATCH) :&lt;br /&gt;
  &lt;ul&gt;
    &lt;li&gt;
      MAJEUR : changements disruptifs ou dépréciations. La mise à jour peut
      nécessiter des modifications de code.
    &lt;/li&gt;
    &lt;li&gt;
      MINEUR : nouvelles fonctionnalités ou dépréciations rétrocompatibles. Mise
      à jour sans risque.
    &lt;/li&gt;
    &lt;li&gt;
      CORRECTIF : corrections de bugs ou de sécurité rétrocompatibles. Pas de
      nouvelles fonctionnalités ni de dépréciations.
    &lt;/li&gt;
  &lt;/ul&gt;
  L&#39;ancien système de versionnage (par exemple : 4.33 ou 4.33.12 pour les
  publications npm) y ressemblait visuellement, mais représentait simplement une
  itération supplémentaire du SDK : chaque version incluait potentiellement des
  changements majeurs.&lt;br /&gt;Avec le SemVer, le numéro de version indique
  immédiatement la nature de la mise à jour.&amp;nbsp;
&lt;/div&gt;
&lt;h3 style=&quot;text-align: justify;&quot;&gt;
  &lt;span style=&quot;font-size: x-large;&quot;&gt;Pourquoi passer au SemVer ?&lt;/span&gt;
&lt;/h3&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  Voici les avantages pour les développeurs :
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
  &lt;ul&gt;
    &lt;li&gt;
      Indication immédiate du risque : en un coup d’œil, vous savez si la mise à
      jour est automatique ou nécessite une intervention.
    &lt;/li&gt;
    &lt;li&gt;
      Signal d’alerte : les versions majeures demandent de consulter le guide de
      migration avant mise à jour.
    &lt;/li&gt;
    &lt;li&gt;
      Meilleure planification : les changements disruptifs sont regroupés à des
      moments prévisibles.
    &lt;/li&gt;
    &lt;li&gt;
      Flux de valeur continu : profitez des nouvelles fonctionnalités via les
      versions mineures sans craindre de casser votre code.
    &lt;/li&gt;
    &lt;li&gt;
      Mise à jour automatique sécurisée : les plages de versions (par exemple.
      ^5.1.0) intègrent automatiquement les nouvelles versions mineures.
    &lt;/li&gt;
    &lt;li&gt;
      Anticipation des dépréciations : des avertissements clairs indiqueront
      quand des APIs seront supprimées dans la prochaine version majeure.
    &lt;/li&gt;
    &lt;li&gt;
      Alignement avec les outils modernes : npm, Yarn, Renovate, Dependabot ou
      encore les politiques CI fonctionnent naturellement avec SemVer.
    &lt;/li&gt;
    &lt;li&gt;
      Réduction des coûts de support et d’intégration : moins de breaking change
      silencieux, des guides de mise à jour plus clairs, et des correctifs de
      sécurité plus rapides.&amp;nbsp;
    &lt;/li&gt;
  &lt;/ul&gt;
  &lt;div&gt;
    &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Calendrier de publication&lt;/span&gt;&lt;/h3&gt;
    &lt;br /&gt;
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    La version 4.34 arrive très bientôt (sortie prévue ce mois-ci) et sera la
    dernière version de la série 4.x. Pas d’inquiétude, le passage en 5.x est
    simplement lié à l’introduction du versionnage sémantique !
  &lt;/div&gt;
  &lt;div&gt;À partir de 2026, le cycle de publication sera le suivant :&lt;/div&gt;
  &lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;Février : version majeure (5.0 au lieu de 4.35)&lt;/li&gt;
      &lt;li&gt;Juin &amp;amp; Octobre : versions mineures (5.1 et 5.2)&lt;/li&gt;
      &lt;li&gt;Février 2027 : prochaine version majeure (6.0)&lt;/li&gt;
    &lt;/ul&gt;
    Cette cadence prévisible vous permettra de planifier vos montées de version
    et de regrouper les changements plus impactants.
  &lt;/div&gt;
  &lt;div&gt;
    &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Plan de support&lt;/span&gt;&lt;/h3&gt;
    Le Product Lifecycle Policy (PLC) d&#39;Esri évolue pour s’adapter à cette
    nouvelle stratégie de publication :
  &lt;/div&gt;
  &lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;
        Une nouvelle version restera en disponibilité générale jusqu’à la sortie
        de la version mineure suivante.
      &lt;/li&gt;
      &lt;li&gt;
        Le support étendu se poursuivra pendant trois ans à compter de la sortie
        de la version majeure initiale (MAJOR.0).
      &lt;/li&gt;
      &lt;li&gt;
        Les correctifs de bugs seront appliqués à la dernière version mineure
        d’une version majeure prise en charge (MAJOR.LATEST).
      &lt;/li&gt;
    &lt;/ul&gt;
    La phase de support mature sera supprimée, en cohérence avec&lt;a
      href=&quot;https://www.arcorama.fr/2025/09/evolution-du-cycle-de-vie-darcgis.html&quot;
      target=&quot;_blank&quot;
    &gt;
      les récents changements du PLC d’ArcGIS Enterprise&lt;/a
    &gt;.
  &lt;/div&gt;
  &lt;div&gt;
    Ce nouveau plan de support n’affectera pas les versions précédentes, dont la
    4.34 encore à venir.
  &lt;/div&gt;
  &lt;div&gt;
    &lt;h3&gt;&lt;span style=&quot;font-size: x-large;&quot;&gt;Alignement avec Calcite&lt;/span&gt;&lt;/h3&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      Depuis plusieurs années, l&#39;ArcGIS Maps SDK for JavaScript et ArcGIS Online
      sont publiés de manière coordonnée, car ces deux solutions évoluent
      conjointement.&lt;br /&gt;ArcGIS Online s’enrichit de nouveaux workflows grâce
      aux nouveautés du SDK, et le SDK est mis à jour pour exploiter les
      nouvelles fonctionnalités d’Online au même moment : ils évoluent
      ensemble.&amp;nbsp;Le Calcite Design System, largement utilisé pour la
      conception des interfaces (UI/UX) du SDK, d’Online et des applications
      personnalisées des développeurs, joue un rôle central dans cette
      cohérence.&lt;br /&gt;Cette année, Esri a synchronisé les publications de
      Calcite avec celles du SDK et d’ArcGIS Online.&lt;br /&gt;Et comme Calcite suit
      déjà SemVer, ils aligneront désormais les versions majeures du SDK sur
      celles de Calcite pour une intégration plus fluide de bout en bout.
    &lt;/div&gt;
    &lt;h3 style=&quot;text-align: justify;&quot;&gt;
      &lt;span style=&quot;font-size: x-large;&quot;&gt;Conclusion&lt;/span&gt;
    &lt;/h3&gt;
    &lt;div style=&quot;text-align: justify;&quot;&gt;
      Le versionnage sémantique apporte plus de clarté, de confiance et de
      maîtrise. L&#39;objectif d&#39;Esri est de vous aider à mieux identifier les
      changements majeurs, simplifier vos mises à jour et garantir une
      expérience plus cohérente pour tous ceux qui développent avec le
      SDK.&amp;nbsp;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/esri-annonce-le-versionnage-semantique.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitUN1ULey_oQuJlO4e3CHL6cGt18Ayb1F12WcHsf4ukM1vfQXLrTXR6m02PZ6nFmdEMZiPs9jipaAeAwbHnyEjgeGjbf32Z6s0PC2q6BBgVMKSvn8k6pw_8aGUTJp_saOvWQZDUCK8xzXnI_dyxRUD2sIGpwZN3ZM5WFkZyEENjwZe8PhN6iZtffz-kwwY/s72-c/SemVer.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3781853964762057615.post-5390762624891363947</guid><pubDate>Thu, 02 Oct 2025 09:19:00 +0000</pubDate><atom:updated>2025-10-02T11:20:35.784+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">événement</category><title>Le programme du développeur à SIG 2025</title><description>&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;style&gt;
    a{color: rgb(106,14,120)}
  &lt;/style&gt;
  &lt;img src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrJAfyWHLGuZeqjaGp_3X2m_d_aJlocrYNhDxL2ruTVHoQGT0NC8WLah1KXNizpFq9BuA46IaTYmOQlzpINxA_13GLY_myQLBIwygoRa6sPJgb7GFDFeMja4XTi6DIwHvdjsXBQR4l11b1p45e96TqgvkblFtb05QYok4x_yp0Rhn-q6EvYS5P8_jaMapU/s3439/programmeSIG202_minia-min.jpg&quot; style=&quot;display: none;&quot; /&gt;&lt;a href=&quot;https://www.geo-evenement.fr/?utm_term=&amp;amp;utm_campaign=21.+PMax+-+Geo+Evenement&amp;amp;utm_source=adwords&amp;amp;utm_medium=ppc&amp;amp;hsa_acc=7631760897&amp;amp;hsa_cam=18400123167&amp;amp;hsa_grp=&amp;amp;hsa_ad=&amp;amp;hsa_src=x&amp;amp;hsa_tgt=&amp;amp;hsa_kw=&amp;amp;hsa_mt=&amp;amp;hsa_net=adwords&amp;amp;hsa_ver=3&amp;amp;gad_source=1&amp;amp;gad_campaignid=18400123803&amp;amp;gclid=CjwKCAjwxfjGBhAUEiwAKWPwDl9rBzxucD18n8wlm7sQDMr-QPZCRE4yK8G8yBbvNnJm3OZdRnn1HhoCcmkQAvD_BwE&quot; target=&quot;_blank&quot;&gt;SIG 2025&lt;/a&gt;
c&#39;est dans moins d&#39;une semaine ! On se retrouve les 8 et 9 octobre aux Docks de
Paris et le 10 en distanciel.&amp;nbsp;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; display: none; text-align: center;&quot;&gt;
  &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrJAfyWHLGuZeqjaGp_3X2m_d_aJlocrYNhDxL2ruTVHoQGT0NC8WLah1KXNizpFq9BuA46IaTYmOQlzpINxA_13GLY_myQLBIwygoRa6sPJgb7GFDFeMja4XTi6DIwHvdjsXBQR4l11b1p45e96TqgvkblFtb05QYok4x_yp0Rhn-q6EvYS5P8_jaMapU/s3439/programmeSIG202_minia-min.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;2133&quot; data-original-width=&quot;3439&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrJAfyWHLGuZeqjaGp_3X2m_d_aJlocrYNhDxL2ruTVHoQGT0NC8WLah1KXNizpFq9BuA46IaTYmOQlzpINxA_13GLY_myQLBIwygoRa6sPJgb7GFDFeMja4XTi6DIwHvdjsXBQR4l11b1p45e96TqgvkblFtb05QYok4x_yp0Rhn-q6EvYS5P8_jaMapU/s16000/programmeSIG202_minia-min.jpg&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
La conférence francophone dédiée aux utilisateurs d&#39;Esri est l&#39;occasion de venir
assister à de nombreux ateliers et retours d&#39;expérience, et échanger avec de
nombreux acteurs du monde des SIG. En tant que développeur, quelles sont les
sessions à ne pas manquer ?
&lt;div style=&quot;text-align: left;&quot;&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    Vous trouverez ci-dessous l&#39;ensemble des ateliers de développement animées
    par mes collègues d&#39;Esri France et moi-même :
  &lt;/div&gt;
  &lt;div style=&quot;text-align: justify;&quot;&gt;
    &lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
      &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfPhtKDhQlD7O0wb9nvhBIlrO6yfpY10GJOow1haNkI1DuRUL_zEOryw5tWnPsfvZGCFtFAouAfZuE9hNjZLRqPvcskgcd4sgZdm4t7DlspSP6RaZ9v7vipd3vYuihyphenhyphenmL_vUhWwbskCqzEIN9pz8U8vwq_GvSzXtcQv57ANdEd82S8cUEe14D4hFnPSo-5/s995/programmeSIG2025.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;411&quot; data-original-width=&quot;995&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfPhtKDhQlD7O0wb9nvhBIlrO6yfpY10GJOow1haNkI1DuRUL_zEOryw5tWnPsfvZGCFtFAouAfZuE9hNjZLRqPvcskgcd4sgZdm4t7DlspSP6RaZ9v7vipd3vYuihyphenhyphenmL_vUhWwbskCqzEIN9pz8U8vwq_GvSzXtcQv57ANdEd82S8cUEe14D4hFnPSo-5/s16000/programmeSIG2025.jpg&quot; /&gt;&lt;/a&gt;
    &lt;/div&gt;
    &lt;div style=&quot;text-align: left;&quot;&gt;
      En plus de cela, sur les trois jours, de nombreuses communications
      utilisateurs vous permettront de découvrir les retours d&#39;expérience
      d&#39;autres développeurs. N&#39;hésitez pas à consulter
      &lt;a href=&quot;https://www.geo-evenement.fr/sessions&quot; target=&quot;_blank&quot;&gt;le programme détaillé&lt;/a&gt;
      et vous inscrire aux différentes sessions pour préparer votre emploi du
      temps.&amp;nbsp;
    &lt;/div&gt;
    On se retrouve à la conf 💜
  &lt;/div&gt;
&lt;/div&gt;
</description><link>https://www.codethemap.fr/2025/10/le-programme-du-developpeur-sig-2025.html</link><author>noreply@blogger.com (Pauline Louis)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrJAfyWHLGuZeqjaGp_3X2m_d_aJlocrYNhDxL2ruTVHoQGT0NC8WLah1KXNizpFq9BuA46IaTYmOQlzpINxA_13GLY_myQLBIwygoRa6sPJgb7GFDFeMja4XTi6DIwHvdjsXBQR4l11b1p45e96TqgvkblFtb05QYok4x_yp0Rhn-q6EvYS5P8_jaMapU/s72-c/programmeSIG202_minia-min.jpg" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>