Geotriggers
Cette version introduit la première version des Geotriggers. Les
geotriggers offrent un moyen simple et puissant de surveiller
l'emplacement de votre appareil et de vous alerter lorsque votre
appareil entre ou quitte une zone géographique (parfois appelée
geofencing). Les geotriggers vous permettent d'avertir les clients
lorsque les livraisons sont sur le point d'arriver, d'avertir les
chauffeurs lorsqu'ils sont entrés dans une zone réglementée, d'avertir
des alertes météo imminentes, et bien plus encore.
Pour créer un Geotrigger, vous spécifiez 3 composants :
- Un ensemble de fences à surveiller.
- Un « flux » de mises à jour de localisation.
- Un type de règle (par exemple, l'emplacement entre ou quitte une
clôture).
Vous créez ensuite un Geotrigger Monitor, vous vous asseyez et attendez
les événements.
Dans cette première version, le flux de mises à jour de
localisation peut être n'importe quelle source de données de
localisation Runtime, permettant aux Geotriggers d'agir sur la
localisation actuelle d'un appareil, un périphérique NMEA, la
lecture simulée d'un fichier GPX, ou même votre propre source de
données de localisation personnalisée.
Les fences peuvent provenir d'une table d'entités (en ligne ou hors
ligne, éventuellement filtrées à l'aide d'une clause
where et/ou d'une zone d'intérêt), d'une superposition
graphique ou peuvent être une caractéristique ou un graphique
individuel.
Il y a quelques fonctionnalités vraiment intéressantes incluses
avec Geotriggers qui méritent d'être connues :
- Vous pouvez spécifier un tampon pour les fences. Ceci est requis
lorsque les fences sont des points ou des polylignes, mais peut
également être utilisé avec des polygones.
- Si vous utilisez des graphiques pour les fences (soit en tant que
graphique unique ou en superposition de graphiques), toute mise à
jour d'un graphique sera automatiquement prise en compte par le
moniteur Geotrigger. C'est idéal pour surveiller votre emplacement
par rapport aux données changeant dynamiquement (par exemple, les
buffers autour des récents éclairs ou ce camion à tacos qui circule
dans votre quartier). Et si vous utilisez une superposition
graphique, les Geotriggers le remarqueront même lorsque vous ajoutez
ou supprimez des graphiques.
- Vous pouvez spécifier une expression d'arcade pour le message qui
est délivré lorsqu'un événement Geotrigger se déclenche afin que
vous puissiez lire les attributs de la fence ou de l'entité
déclenchante et les inclure dans le message d'événement. Cela
signifie que vous pouvez vraiment découpler le code écoutant les
événements Geotrigger des données qui les sous-tendent.
- Étant donné que les fences ne sont que des géométries Runtime
standard, vous obtenez automatiquement la prise en charge des
géométries en plusieurs parties.
- Geotriggers utilise l'indexation spatiale et diverses autres
optimisations pour offrir d'excellentes performances. Cela signifie
que nous pouvons confortablement prendre en charge des dizaines de
milliers de barrières géographiques sur un appareil mobile (bien que
pour le bien de votre batterie, il soit recommandé d'utiliser aussi
peu de barrières géographiques que votre application doit réellement
surveiller).
- Bien que les fences proviennent d'entités ou de graphiques, elles
n'ont pas besoin de faire partie d'une carte ou d'une vue
cartographique. C'est à vous de décider si vous affichez les
fences.
Geotriggers fournit une API simple, se connecte aux tableaux
d'entités et aux superpositions graphiques (y compris la gestion
automatique des graphiques en mouvement) et offre des avantages en
termes de performances qu'il aurait été difficile de coder
vous-même. Même si vous avez déjà construit une solution de
geofencing avec Runtime, jetez un œil à Geotriggers pour voir si
cela peut aider à réduire la maintenance de votre code.
Vraies courbes
Runtime a toujours pris en charge les vraies courbes, mais il
nécessitait une densification de la géométrie et était limité à la
visualisation uniquement.
En 100.11, Esri a introduit la possibilité d'identifier, d'interroger et de
sélectionner des entités avec de vraies courbes dans des couches
d'entités, fournies dans des packages de cartes mobiles créés dans
ArcGIS Pro. La prise en charge des vraies courbes dans le moteur
géométrique est améliorée.
Maintenant, en 100.12, des API pour créer et modifier des
géométries contenant de vraies courbes a été ajouté ainsi que la possibilité de travailler avec de vraies courbes dans les
services d'entités ArcGIS Enterprise.
Runtime prend en charge à la fois les arcs elliptiques et les
courbes cubiques de Bézier. Geometry Builders peut désormais
ajouter et modifier des segments courbes. Notez que les éditeurs
d'esquisse ne prennent pas encore en charge l'édition de
courbes, mais si vous avez construit votre propre expérience
d'édition de géométrie à l'aide de générateurs de géométrie,
vous pouvez désormais intégrer une véritable édition de
courbe.
Clients de la vraie courbe
Pour aider à maintenir l'intégrité des données lors de la
modification de courbes réelles à partir des services d'entités
ArcGIS Enterprise, l'API inclut également une propriété
déclarant le niveau de prise en charge fourni par votre
application Runtime :
- Densifier les courbes : l'application n'a pas besoin de
fonctionner avec de vraies courbes. Des versions densifiées de
segments de géométrie de courbe réelle seront renvoyées. C'est
la valeur par défaut, et c'était le comportement jusqu'à
présent.
- Fetch Curves : L'application récupérera et affichera les
vraies courbes, mais ne garantit pas qu'elle fonctionnera pour
maintenir ces courbes si elles sont modifiées. Cela peut réduire
le trafic réseau lors de l'affichage de véritables géométries de
courbe.
- Client True Curve : l'application récupérera et affichera les
vraies courbes et a été mise à jour pour modifier les vraies
courbes.
L'éditeur d'un service d'entités dans ArcGIS Enterprise (10.6
ou version ultérieure) peut spécifier que seuls les « clients de
vraies courbes » doivent être autorisés à modifier la géométrie
contenant de vraies courbes. Si le service est configuré de
cette façon, Runtime exigera qu'une application se déclare comme
un véritable client Curves avant de pouvoir modifier les données
de ce service. Remarque : si votre application se déclare être
un véritable client de courbe, il vous appartient toujours de
vous assurer que tout code d'édition de géométrie est mis à jour
pour utiliser les nouvelles API de création de géométrie de
courbe réelle.
Les vraies courbes des services ne sont prises en charge que
dans les workflows en ligne avec ArcGIS Enterprise. Esri vise à
améliorer la prise en charge des vraies courbes dans les futures
versions, y compris les flux de travail hors ligne et la prise
en charge de l'éditeur de croquis.
Géodatabases mobiles
100.12 introduit la prise en charge des géodatabases mobiles
créées dans ArcGIS Pro (2.7 ou version ultérieure). Ces
géodatabases mobiles prennent en charge à la fois l'affichage et
la mise à jour, et permettent de nouveaux workflows de mise à
jour hors ligne qui ne nécessitent pas de service d'entités.
Vous pouvez afficher des géodatabases mobiles avec une licence
Lite Runtime, et la modification nécessite une licence de
base.
Contrairement aux géodatabases générées et téléchargées à
partir d'un service d'entités, celles-ci ne contiennent pas de
métadonnées d'élément de service. Cela signifie que, comme si
vous travailliez avec des GeoPackages ou des fichiers de formes,
vous configurez la symbologie et les fenêtres contextuelles lors
de l'ajout des données à une carte.
Cartes au sol
Les cartes Web au sol sont publiées par ArcGIS Pro 2.8 à l'aide
du modèle d'information ArcGIS Indoor. Runtime 100.12 introduit
la prise en charge de l'utilisation de ces cartes. Si une carte
prend en compte les étages, vous pouvez contrôler quel étage est
visible à l'aide du gestionnaire d'étages de la carte. Les
prochaines versions prendront en charge les scènes 3D prenant en
compte le sol et l'empaquetage de cartes prenant en compte le
sol dans des packages de cartes mobiles.
Abandon du Locator
De nouveaux Locator ont été introduits avec ArcGIS Pro 2.3 via
l'outil Créer un localisateur et pris en charge à partir
d'ArcGIS Runtime 100.5. Ces localisateurs se composent d'un
fichier *.loc et *.loz qui sont plus petits, plus rapides, plus
faciles à entretenir et offrent une cohérence à travers le
système ArcGIS. Comme mentionné précédemment,
Runtime 100.11
était la dernière version à prendre en charge les localisateurs
de géocodage classiques (qui n'incluent pas de fichier *.loz) et
ils ne fonctionneront pas avec 100.12.
Remarque : cela ne concerne que l'utilisation des localisateurs
locaux - il n'y a aucun changement dans la prise en charge de
Runtime pour les services de géocodage ArcGIS.
Autres améliorations
- Sélectionnez et contrôlez la visibilité des entités
d'annotation individuelles dans une couche d'annotations, ainsi
que la définition d'une expression de définition sur la
couche.
- Les réseaux de services publics respectent la sémantique de «
restriction » de suppression d'association.
- Étiquetage côté client des couches de scènes ponctuelles en
fonction des informations d'étiquetage configurées.
- Prise en charge de bureau pour les versions 1.7 et 1.8 de la
couche de scène 3D indexée (I3S), améliorant le rendu,
l'utilisation de la mémoire et l'utilisation du processeur, et
réduisant les demandes réseau sur Linux, macOS et Windows. Le
support mobile sera disponible dans une future version de
Runtime.
- Prise en charge de la nouvelle fonctionnalité Arcade 1.14,
ainsi que de la fonctionnalité 1.13 pour lire les domaines et
les schémas de table à partir d'une fonctionnalité.
- Prise en charge des classes de symboles basées sur l'échelle
et des améliorations des styles de dictionnaire militaire basés
sur Arcade.
- Local Server est mis à jour pour prendre en charge le
géotraitement et les packages de cartes créés avec ArcGIS Pro
2.8.
Pour plus de détails sur toutes ces nouvelles fonctionnalités
et améliorations, consultez les notes de version pour
Android,
iOS,
Qt,
.NET
et
Java.
Téléchargez et commencez
Pour obtenir 100.12, accédez au site Web
ArcGIS Developers, accédez à la page ArcGIS Runtime SDK de votre choix et
téléchargez le SDK. Vous pouvez également référencer le SDK via
NuGet,
Gradle,
Swift Package Manager
ou
CocoaPods. Si vous débutez dans le développement avec ArcGIS Runtime et
que vous n'avez pas d'abonnement ArcGIS Developer,
créez simplement un compte gratuit
et vous pourrez accéder à tout ce dont vous avez besoin pour
développer votre application.
Vous pouvez vous abonner à ce blog pour lire d'autres articles sur le développement Web d'applications cartographiques et découvrir comment l'ArcGIS API JavaScript est une superbe alternative à Google Maps ! Vous voulez vous aussi réaliser des applications Web cartographiques et dynamiques ? N'hésitez pas à souscrire à un plan gratuit ArcGIS for Developers pour développer vos propres applications cartographiques 2D ou 3D ! Cet article résume ce que vous obtiendrez. Et pour en savoir sur l'API c'est ici.
Aucun commentaire:
Enregistrer un commentaire