Expressions de l’outil Join Features (Joindre les entités)
L’outil Join Features (Joindre les entités) utilise des expressions ArcGIS Arcade pour spécifier les conditions de jointure. Dans certains cas, vous voudrez spécifier une condition pour sélectionner des entités devant être incluses dans la jointure. Vous pouvez appliquer des conditions de jointure simples (telles que field a > field c), mais également des conditions avancées. Les conditions sont testées par rapport à chaque entité pour identifier le contenu analysé. Les calculs sont effectués lors de l’exécution de l’analyse sur ArcGIS GeoAnalytics Server.
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 dans Join Features (Joindre des entités) sont présentés sous la forme $target["field name"] et $join["field name"] ou $target.fieldname et $join.fieldname. La première option, $target["field name"] et $join["field name"], est requise lorsqu’un nom de champ contient un espace. Tous les exemples proposés ci-après utilisent cette option.
Remarque :
L’option Join Features (Joindre des entités) requiert deux entrées, une couche cible et une couche de jointure. Ainsi, toute expression Arcade utilisée dans Join Features (Joindre des entités) doit indiquer le jeu de données utilisé. Par exemple, l’opération permettant de calculer si un champ de la couche cible nommé field1 est supérieur à un champ de la couche de jointure nommé field2 est la suivante : $target["field1"] > $join["field2"]. Dans les autres outils GeoAnalytics, les expressions utilisent un format différent : $feature["fieldname"].
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) : joindre des entités avec des expressions de début et de fin.
Calculate Field (Calculer un champ) : calculer des valeurs de champ.
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. Le tableau suivant présente des exemples d’opérations disponibles :
En savoir plus sur les fonctions et opérations mathématiques dans Arcade
|
Opérateur |
Explication |
Exemple |
Résultat |
|---|---|---|---|
|
|
a plus b. |
|
4.0 |
|
|
a moins b. |
|
1.1 |
|
|
a multiplié par b. |
|
4.4 |
|
|
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 la plus basse entre a et b. |
|
-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 en entrée est inférieure à la valeur basse, elle renvoie la valeur basse. Si la valeur en entrée est supérieure à la valeur haute, elle renvoie la valeur haute. |
|
Renvoie 0 si la valeur Renvoie 6 si |
Exemple de multiplication pour une expression de condition de jointure utilisant un champ du jeu de données cible.
$target["Distance"] * 2 > $join["DistField"]
Exemples de fonctions de texte
Les expressions de condition de jointure peuvent traiter du texte. Le tableau suivant présente des exemples d’opérations disponibles :
En savoir plus sur les fonctions de texte 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")) == False
Exemples de fonctions de date
Les expressions de jointure peuvent traiter des dates. Le tableau ci-dessous présente des exemples d’opérations disponibles.
En savoir plus sur les fonctions de date dans Arcade
Dans Arcade, les valeurs relatives aux mois sont comprises entre 0 (janvier) et 11 (décembre), les valeurs relatives aux jours sont comprises entre 1 et 31, les valeurs relatives aux heures sont comprises entre 0 (minuit) et 23 (23 h 00), les valeurs relatives aux minutes et aux secondes sont comprises entre 0 et 59, et les valeurs relatives aux millisecondes sont comprises entre 0 et 999. Les dates Arcade renvoient les valeurs temporelles de la localisation GeoAnalytics Server.
|
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 2 : le champ |
Exemple 1 : 2017 Exemple 2 : 2012 |
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 d’opérateurs logiques
Outre les opérateurs conditionnels, des opérateurs logiques plus avancés, illustrés dans le tableau suivant, peuvent être utilisés pour joindre des entités :
En savoir plus sur les fonctions logiques dans Arcade
|
Fonction |
Explication |
Exemple |
Résultat |
|---|---|---|---|
|
|
Renvoie la valeur en entrée si elle est comprise dans les limites de contrainte. Si la valeur en entrée est inférieure à la valeur basse, elle renvoie la valeur basse. Si la valeur en entrée est supérieure à la valeur haute, elle renvoie la valeur haute. |
|
Renvoie 0 si la valeur Renvoie 6 si |
|
|
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 |