Expressions de calcul de champs
L’outil Calculate Field (Calculer un champ) utilise des expressions Arcade pour déterminer les valeurs de champ. Vous pouvez effectuer des calculs simples ou complexes et les appliquer à tous les enregistrements. Le calcul s’applique à chaque entité. Les sections suivantes proposent des exemples d’utilisation d’une expression de champ calculé. Les calculs sont effectués lors de l’exécution de l’analyse sur ArcGIS GeoAnalytics Server et créent toujours une couche.
Dans ArcGIS Enterprise 10.6 et versions ultérieures, les expressions sont mises en forme à l’aide d’Arcade. Dans Arcade, les noms de champ sont présentés sous la forme $feature["field name"] ou $feature.fieldname. La première option, $feature["field name"], est requise si un nom de champ contient un espace. Tous les exemples proposés ci-après utilisent cette option.
En savoir plus sur les expressions Arcade
Les outils suivants utilisent des expressions Arcade dans GeoAnalytics Server :
Reconstruct Tracks (Reconstruire les traces) : expressions de zone tampon.
Create Buffers (Créer des zones tampons) : expressions de zone tampon.
Join Features (Joindre des entités) : expressions de jointure.
Detect Incidents (Détecter les incidents) : détecter les incidents avec des expressions de début et de fin.
Héritage :
L’extension ArcGIS GeoAnalytics Server sera bientôt obsolète dans ArcGIS Enterprise. La version finale de GeoAnalytics Server a été incluse avec ArcGIS Enterprise 11.3. Ces outils sont disponibles dans ArcGIS Enterprise 11.3 et les versions antérieures.
Exemples d’opérations et de fonctions mathématiques
Les expressions peuvent traiter les nombres mathématiquement. La table suivante montre des exemples d’opérations disponibles.
En savoir plus sur les fonctions et opérations mathématiques dans Arcade
|
Opérateur |
Explication |
Exemple |
|---|---|---|
|
|
Renvoie la somme de a plus b. |
4.0 |
|
|
Renvoie la différence de a moins b. |
1.1 |
|
|
Renvoie le produit de a multiplié par b. |
4.4 |
|
|
Renvoie le quotient de a divisé par b. |
3.2 |
|
|
Renvoie la valeur absolue (positive) de a. |
1,5 |
|
|
Renvoie le logarithme naturel (base E) de a. |
0 |
|
|
Renvoie le sinus trigonométrique de a. On suppose que l’entrée est un angle en radians. |
1 |
|
|
Renvoie le cosinus trigonométrique de a. On suppose que l’entrée est un angle en radians. |
1 |
|
|
Renvoie la tangente de a. On suppose que l’entrée est un angle en radians. |
0 |
|
|
Renvoie la racine carrée de a. |
3 |
|
|
Renvoie la valeur a ou b la plus faible. |
-3 |
|
|
Renvoie la valeur la plus élevée entre a et b. |
1,5 |
|
|
Renvoie la valeur en entrée si elle est comprise dans les limites de contrainte. Si la valeur est inférieure à la valeur basse, elle renvoie la valeur basse. Si la valeur est supérieure à la valeur élevée, elle renvoie la valeur élevée. |
Exemple 1 : Renvoie 0 si la valeur Exemple 2 : Renvoie 6 si |
Exemples de fonctions de texte
Les expressions Calculate Field (Calculer un champ) sont capables de traiter du texte. La table suivante montre des exemples d’opérations disponibles.
En savoir plus sur les fonctions de texte disponibles dans Arcade
|
Opérateur |
Explication |
Exemple |
Résultat |
|---|---|---|---|
|
|
Concatène les valeurs et renvoie une chaîne.
|
|
GeoAnalytics est super ! |
|
|
Trouve une chaîne à l’intérieur d’une chaîne. Les caractères génériques ne sont pas pris en charge.
|
|
2 |
|
|
Convertit une chaîne en minuscule.
|
|
GeoAnalytics |
Exemple de texte utilisant find et lower.
find(("north"), lower("146NorthStreet"))
Exemples de fonctions de date
Les expressions Calculate Field (Calculer un champ) sont capables de traiter des dates. La table suivante montre des exemples d’opérations disponibles. Dans Arcade, les valeurs relatives aux mois, aux jours et aux heures sont comprises respectivement entre 0 (janvier) et 11 (décembre), entre le 1er et le 31, et entre 0 (12:00 am) et 23 (11:00 pm) heures, 0 et 59 minutes, 0 et 59 secondes et 0 et 999 millisecondes. Les dates Arcade renvoient les valeurs temporelles de la localisation GeoAnalytics Server.
En savoir plus sur les fonctions de date dans Arcade
|
Opérateur |
Explication |
Exemple |
Résultat |
|---|---|---|---|
|
|
Analyse une valeur ou un ensemble de valeurs dans une chaîne de date.
|
Exemple 1 : Exemple 2 : Exemple 3 : |
Exemple 1 : 20 oct 2016 11:23:03 Exemple 2 : 14 Jan 2017 00:00:00 Exemple 3 : renvoie l’heure actuelle |
|
|
Opère une soustraction entre deux dates et renvoie la différence dans les unités spécifiées.
|
Exemple 1 : Exemple 2 : |
Le résultat dépend du moment où est exécutée cette commande. Exemple 1 : -20532129137 Exemple 2 : -0,6546783768647119 |
|
|
Renvoie l'année de la date donnée.
|
Exemple 1 :
Exemple 2 : le champ |
Exemple 1 : 2017 Exemple 2 : 2012 |
Exemples de fonctions logiques
Outre les expressions mathématiques simples, vous pouvez utiliser d’autres fonctions avancées, illustrées dans la table suivante, pour appliquer des expressions de zone tampon.
|
Fonction |
Explication |
Exemple |
Résultat |
|---|---|---|---|
|
|
Renvoie une valeur si une condition est
|
|
Renvoie Renvoie le résultat de la deuxième fonction |
|
|
Évalue une série d’expressions jusqu’à ce que l’une soit
|
|
Si |
|
|
Évalue une expression et compare sa valeur aux paramètres suivants. Si l’expression correspond, elle renvoie la valeur du paramètre suivant. Si aucune correspondance n’est trouvée, le dernier paramètre peut être une valeur de renvoi par défaut.
|
|
Compare l’égalité entre la valeur conditionnelle |
Opérateurs conditionnels
Les instructions conditionnelles peuvent utiliser les opérateurs suivants :
|
Opérateur |
Explication |
Exemple |
Résultats |
|---|---|---|---|
|
|
a est supérieur à b a est inférieur à b |
|
False |
|
|
a est supérieur ou égal à b a est inférieur ou égal à b |
|
True |
|
|
a est différent de b |
|
True |
|
|
a est égal à b |
|
True |
|
|
La condition 1 ou la condition 2 est satisfaite. |
|
True |
|
|
La condition 1 et la condition 2 sont satisfaites. |
|
False |
Exemples tenant compte des traces
Vous pouvez utiliser des équations gérant les traces dans Arcade avec certains outils GeoAnalytics, tels que Detect Incidents (Détecter les incidents) et Calculate Field (Calculer un champ). Dans Calculer un champ, vous pouvez utiliser les équations de gestion des traces lorsque la couche en entrée est temporelle, l’expression est dotée de propriétés de gestion de traces, et un ou plusieurs champs sont utilisés pour identifier les traces.
Utilisez les expressions de gestion des traces suivantes dans ArcGIS Enterprise 10.6 :
|
Fonction |
Explication |
Exemple |
Résultat |
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Renvoie une matrice de valeurs dans le champ donné pour l’index de temps spécifié.
|
Exemple 1 : Exemple 2 : Exemple 3 : Exemple 4 : |
Lorsque l’exemple 1 est évalué à l’index k, il renvoie une matrice de valeurs à l’index 3 à k. Si vous effectuez l’évaluation à l’index 6 ( L’exemple 2 renvoie une matrice de valeurs calculées comme suit : index k moins la valeur donnée moins 1 ( L’exemple 3 renvoie la moyenne des valeurs aux index L’exemple 4 renvoie le premier élément (index 0) de la matrice créée à l’exemple 2, à savoir |
||||||||||||
|
|
Renvoie une matrice de valeurs allant d’index1 ( |
Exemple 1 : Exemple 2 : |
Exemple 1 : Exemple 2 : |
||||||||||||
|
|
Calcule l’heure de début d’une piste en millisecondes depuis la dernière époque. |
Utilisation d’une piste commençant le 2 janvier 2017
|
|
||||||||||||
|
|
Calcule la durée d’une piste en millisecondes depuis le début jusqu’à l‘intervalle de temps actuel. |
Utilisation d’une piste commençant le 2 janvier 2017, la date actuelle étant le 4 janvier 2017.
|
|
||||||||||||
|
|
Calcule l’heure actuelle dans une piste. |
Utilisation d’une entité survenant le 3 janvier 2017 à 9 h 00.
|
|
||||||||||||
|
|
Renvoie l’index de temps de l’entité qui est calculée. |
Calcul de cette valeur sur la première entité dans une piste.
|
|
||||||||||||
|
|
Renvoie l’heure de l’entité plsu l’heure créée à l’aide de la
|
Utilisation d’une entité en date du 2 janvier 2017 à 14 h. Exemple 1 : Exemple 2 : |
Exemple 1 : renvoie le 2 janvier à 15 h : Exemple 2 : renvoie le 31 décembre à 14 h : |
||||||||||||
|
|
Renvoie une matrice de valeurs dans le champ donné pour l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps. L’expression est évaluée à chaque entité de la piste.
La fonction de fenêtre est disponible dans ArcGIS Enterprise 10.6.1 ou version ultérieure. |
Exemple 1 : Exemple 2 : Exemple 3 : |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : si l’expression est évaluée à l’index 2 (valeur de 30), elle renvoie Exemple 3 : si l’expression est évaluée à l’index 2 (valeur de 30), elle renvoie |
||||||||||||
|
|
Renvoie une matrice de valeurs représentant la géométrie de l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps. L’expression est évaluée à chaque entité de la piste.
La fonction de fenêtre est disponible dans ArcGIS Enterprise 10.6.1 ou version ultérieure. |
Exemple 1 : Exemple 2 : Exemple 3 : Exemple 4 : recherche de la valeur X du point précédent |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : les polylignes sont renvoyées au format suivant : Exemple 3 : les polygones sont renvoyés au format suivant : Exemple 4 : l’expression est évaluée à l’index 2 (valeur de 30) : |
||||||||||||
|
|
Renvoie une matrice de valeurs représentant la géométrie et tous les attributs de l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps.
La fonction de fenêtre est disponible dans ArcGIS Enterprise 10.6.1 ou version ultérieure. |
Exemple 1 : Exemple 2 : |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : l’expression est évaluée à l’index 2 (valeur de 30) : |
Utilisez les expressions de gestion des traces suivantes dans ArcGIS Enterprise 10.6.1 ou version ultérieure :
|
Fonction |
Explication |
Exemple |
Résultat |
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Calcule l’heure de début d’une piste en millisecondes depuis la dernière époque. |
Utilisation d’une piste commençant le 2 janvier 2017
|
|
||||||||||||
|
|
Calcule la durée d’une piste en millisecondes depuis le début jusqu’à l‘intervalle de temps actuel. |
Utilisation d’une piste commençant le 2 janvier 2017, la date actuelle étant le 4 janvier 2017.
|
|
||||||||||||
|
|
Calcule l’heure actuelle dans une piste. |
Utilisation d’une entité survenant le 3 janvier 2017 à 9 h 00.
|
|
||||||||||||
|
|
Renvoie l’index de temps de l’entité qui est calculée. |
Calcul de cette valeur sur la première entité dans une piste.
|
|
||||||||||||
|
|
Renvoie une matrice de valeurs dans le champ donné pour l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps. L’expression est évaluée à chaque entité de la piste.
|
Exemple 1 : Exemple 2 : Exemple 3 : |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : si l’expression est évaluée à l’index 2 (valeur de 30), elle renvoie Exemple 3 : si l’expression est évaluée à l’index 2 (valeur de 30), elle renvoie |
||||||||||||
|
|
Renvoie une matrice de valeurs représentant la géométrie de l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps. L’expression est évaluée à chaque entité de la piste.
|
Exemple 1 : Exemple 2 : Exemple 3 : Exemple 4 : recherche de la valeur X du point précédent |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : les polylignes sont renvoyées au format suivant : Exemple 3 : les polygones sont renvoyés au format suivant : Exemple 4 : l’expression est évaluée à l’index 2 (valeur de 30) : |
||||||||||||
|
|
Renvoie une matrice de valeurs représentant la géométrie et tous les attributs de l’index de temps spécifié. La fonction de fenêtre vous permet d’avancer et de reculer dans le temps.
|
Exemple 1 : Exemple 2 : |
Exemple 1 : si l’expression est évaluée à chaque entité, la table présente les résultats ci-après.
Exemple 2 : l’expression est évaluée à l’index 2 (valeur de 30) : |
Utilisez les expressions de gestion des pistes ci-après pour calculer la distance, la vitesse et l’accélération sur les pistes dans ArcGIS Enterprise 10.9 et les versions ultérieures.
Tous les calculs de distance sont exprimés en mètres, la vitesse est exprimée en mètres par seconde et l’accélération, en mètres par seconde carré. Les distances sont mesurées à l’aide des distances géodésiques.
|
Fonction |
Explication |
|---|---|
|
|
Somme des distances parcourues entre les observations de la première observation à l’observation actuelle. |
|
|
Somme des distances parcourues entre les observations, de la première observation à l’observation actuelle plus la valeur donnée. |
|
|
Distances entre la première valeur (incluse) et la dernière valeur (exclue) dans une fenêtre sur l’observation actuelle (0). |
|
|
Vitesse entre l’observation précédente et l’observation actuelle. |
|
|
Vitesse au niveau de l’observation par rapport à l’observation actuelle. Par exemple, à la valeur 2, il s’agit de la vitesse au niveau de l’observation, deux observations après l’observation actuelle. |
|
|
Valeurs de vitesse entre la première valeur (incluse) et la dernière valeur (exclue) dans une fenêtre autour de l’observation actuelle (0). |
|
|
Accélération entre l’observation précédente et l’observation actuelle. |
|
|
Accélération au niveau de l’observation par rapport à l’observation actuelle. |
|
|
Valeurs d’accélération entre la première valeur (incluse) et la dernière valeur (exclue) dans une fenêtre autour de l’observation actuelle (0). |
Les exemples de calcul de distance, de vitesse et d’accélération utilisent les exemples de l’image ci-après.

|
Fonction |
Exemple de résultat |
||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|
||||||||||||||
|
|
|