H3HexagonalIndexer
Calcule et manipule les index spatiaux hiérarchiques hexagonaux (Uber H3), et permet de regrouper les données spatiales dans des cellules de grille hexagonales pour analyse et visualisation.
Utilisations typiques
- Remplace une géométrie point d'une entité par un hexagone H3 qui le contient
- Calculer l'indice H3 pour un point donné à une résolution H3 fournie
- Renvoie tous les indices H3 contenus dans une zone pour pouvoir les comparer
- Retourne tous les indices H3 voisins d'un indice donné
- Retourne l'indice H3 parent (basse résolution) d'un indice donné
- Retourne l'indice H3 enfant (haute résolution) d'un indice donné
Comment fonctionne-t-il ?
L'indexeur H3HexagonalIndexer permet d'accéder facilement, au sein d'un flux de travail FME, aux opérations clés disponibles dans la bibliothèque open source Uber H3. Cette bibliothèque partitionne la terre en un ensemble de 16 grilles hexagonales différentes, allant de 122 cellules couvrant la terre au niveau 0, jusqu'aux cellules à grain fin au niveau 15 avec des bords d'environ 0,5 m de long.
Le Transformer opère sur une entité à la fois, en effectuant l'opération d'indexation demandée, et éventuellement en changeant la géométrie en hexagone de l'index calculé ou en supprimant entièrement la géométrie. Les opérations qui ont pour résultat le retour de plusieurs index (comme le calcul des voisins ou des enfants) copient l'entité d'entrée pour chaque index résultant, en ajoutant l'index calculé comme nouvel attribut et en changeant éventuellement la géométrie.
L'opération la plus courante consiste à calculer un indice hexagonal pour une résolution définie et à remplacer la géométrie de l'entité par par agrégation des hexagones(généralement via un StatisticsCalculator) pour visualisation.
Un autre cas d'utilisation courant consiste à calculer l'index et à supprimer la géométrie, de sorte que le stockage et l'analyse s'opèrent que sur l'index et donc de façon relationnelle plutôt que spatiale.
Ce Transformer est implémenté de telle sorte qu'il y a toujours une entité par Index H3. Un seul index sera lu par entité d'entrée et une entité de sortie sera générée pour chaque index H3 qui est sorti. Les entités de sortie seront des clones de l'entité d'entrée, à l'exception des nouvelles données et de tout changement de géométrie spécifié par le paramètre Gestion de la géométrie.
Notez que les entités doivent avoir des coordonnées géographiques (lat/long).
H3 a été conçu pour gérer et comprendre de gros volumes de lieux signalés par GPS, et en tant que tel, la précision exacte de certaines opérations n'est pas possible. Par exemple, les hexagones enfants et une résolution plus fine ne sont pas tous strictement contenus dans leur parent. De plus, le parent d'un hexagone enfant contenant un point peut ne pas être le même hexagone que si l'indice était calculé au niveau du parent pour le point original. Si un confinement exact est nécessaire, alors les opérations spatiales présentes dans le PointOnAreaOverlayer ou SpatialFilter/SpatialRelator sont peut-être plus appropriées.
Notes
- Les entités doivent être dans un système de coordonnées géographiques (latitude/longitude). Le Transformer Reprojector ou ses Transformers connexes peuvent être utilisés pour reprojeter à partir d'autres systèmes de coordonnées.
-
Les index H3 produits par le Transformer sont des entiers. Pour obtenir les index H3 sous forme de chaînes hexadécimales (la représentation canonique de H3), utilisez un BaseConverter avec Base d'origine définit sur
10
et Convertir en Base sur16
. -
De même, les index H3 en entrée doivent être des entiers ou des chaînes décimales. Pour convertir des chaînes hexadécimales en chaînes décimales, utilisez un BaseConverter avec Base d'origine définit sur
16
et Convertir en Base sur10
.
Configuration
Ports d'entrée
Ce Transformer accepte des entités avec coordonnées géographiques (lat/long).
Ports de sortie
Les entités avec de nouveaux attributs et/ou géométrie tel que défini en paramètre.
Les entités n'ayant pu être traitées par l'Opération sélectionnée ressortent par ce port.
Les entités rejetées ont un attribut fme_rejection_code
Gestion des entités rejetées : ce paramètre permet d'interrompre la traduction ou de la poursuivre lorsqu'elle rencontre une entité rejetée. Ce paramètre est disponible à la fois comme option par défaut de FME et comme paramètre de traitement.
Paramètres
Get |
Spécifier le calcule H3 devant être effectué sur les entités en entrée. Les options disponibles sont :
|
Les paramètres générauxdisponibles varient en fonction du paramètre Get sélectionné.
Point central à partir de l'index
Index |
Attribut stockant l'index H3 |
Indices Enfants
Index parent |
Attribut stockant l'index H3 |
Résolution index enfant |
La résolution des indices H3 enfants est retournée. |
Gestion de la géométrie |
Conserver : conserve les géométrie des entités Supprimer : supprime les géométries des entité Remplacer par Hexagone: supprime la géométrie de l'entité source et la remplace avec un hexagone représenté par l'index enfant H3 sur chaque entités en sortie. |
Remplir les index
Résolution d'index |
Résolution des indices H3 qui remplissent les géomtéries. |
Compacter les indices |
Remplacer récursivement les branches enfants complètes par leur index H3 parent. Permet d'obtenir le nombre minimum d'index H3 qui couvrent parfaitement la géométrie. Les index résultants seront à différents niveaux, mais auront le nombre minimum d'index pour remplir entièrement la zone. |
Gestion de la géométrie |
Conserver : conserve les géométrie des entités Supprimer : supprime les géométries des entité Remplacer par Hexagone: supprime la géométrie de l'entité source et la remplace avec un hexagone représenté par l'index enfant H3 sur chaque entités en sortie. |
Hexagone à partir de l'index
Index |
Index H3 pour récupérer l'hexagone H3 |
Index
Résolution d'index |
Résolution des indices H3 qui contiennent le points central de la géométrie. |
Gestion de la géométrie |
Conserver : conserve les géométrie des entités Supprimer : supprime les géométries des entité Remplacer par Hexagone: supprime la géométrie de l'entité source et la remplace avec un hexagone représenté par l'index enfant H3 sur chaque entités en sortie. |
Indices hexagonaux voisins
Index |
Index H3 poir récupérer les voisins |
Distance maximale (hexagones) |
Distance maximale (en hexagones) à partir de laquelle les indices H3 voisins seront renvoyés. |
Gestion de la géométrie |
Conserver : conserve les géométrie des entités Supprimer : supprime les géométries des entité Remplacer par Hexagone: supprime la géométrie de l'entité source et la remplace avec un hexagone représenté par l'index enfant H3 sur chaque entités en sortie. |
Index parent
Index enfant |
Index H3 poir récupérer les parents |
Résolution index parent |
Retourne la résolution de l'index H3 parent |
Gestion de la géométrie |
Conserver : conserve les géométrie des entités Supprimer : supprime les géométries des entité Remplacer par Hexagone: supprime la géométrie de l'entité source et la remplace avec un hexagone représenté par l'index enfant H3 sur chaque entités en sortie. |
Résolution
Index |
Index H3 pour récupérer la résolution |
Validité
Index |
Index H3 pour contrôler la validité |
Les paramètres Noms des attributs en sortie varient en fonction du paramètreGet choisi.
Indices Enfants
Index enfant |
Attribut stockant l'index H3 enfant en sortie |
Remplir les index
Index Polyfill |
Attribut stockant l'index H3 qui remplit la géométrie |
Index
Index |
Attribut stockant l'index H3 en sortie |
Indices hexagonaux voisins
Index voisin |
Attribut stockant l'index H3 voisin |
Distance |
Attribut stockant la distance de l'index H3 voisin de l'index H3 en entrée |
Index parent
Index parent |
Attribut stockant l'index H3 parent |
Résolution
Résolution d'index |
Attribut stockant la résolution de l'index H3 en entrée |
Éditer les paramètres des Transformers
À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments du traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.
Définir les valeurs
Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres d'espace de travail. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.
Utilisation de l'éditeur de texte
L'éditeur de texte fournit un moyen efficace de construire des chaînes de textes (dont les expressions régulières) à partir de données source diverses, telles que des attributs, des paramètres et des constantes, et le résultat est directement utilisé dans le paramètre.
Utilisation de l'éditeur arithmétique
L'éditeur arithmétique fournit un moyen simple de construire des expressions mathématiques à partir de plusieurs données source, telles que des attributs et des fonctions, et le résultat est directement utilisé dans un paramètre.
Valeur conditionnelle
Définit des valeurs selon un ou plusieurs tests.
Fenêtre de définition de conditions
Contenu
Les expressions et chaînes de caractères peuvent inclure des fonctions, caractères, paramètres et plus.
Lors du paramétrage des valeurs - qu'elles soient entrées directement dans un paramètre ou construites en utilisant l'un des éditeurs - les chaînes de caractères et les expressions contenant des fonctions Chaîne de caractères, Math, Date et heure ou Entité FME auront ces fonctions évaluées. Par conséquent, les noms de ces fonctions (sous la forme @<nom_de_fonction>) ne doivent pas être utilisés comme valeurs littérales de chaîne de caractères.
Ces fonctions manipulent les chaînes de caractères. | |
Caractères spéciaux |
Un ensemble de caractères de contrôle est disponible dans l'éditeur de texte. |
Plusieurs fonctions sont disponibles dans les deux éditeurs. | |
Fonctions Date/heure | Les fonctions de dates et heures sont disponibles dans l'Editeur texte. |
Ces opérateur sont disponibles dans l'éditeur arithmétique. | |
Elles retournent des valeurs spécifiques aux entités. | |
Les paramètres FME et spécifiques au projet peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |
Options - Tables
Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.
Réordonner
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
|
Couper, Copier et Coller
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
Copier, copier et coller peuvent être utilisés au sein d'un Transformer ou entre Transfromers. |
Filtre
|
Commencez à taper une chaîne de caractères, et la matrice n'affichera que les lignes correspondant à ces caractères. Recherche dans toutes les colonnes. Cela n'affecte que l'affichage des attributs dans le Transformer - cela ne change pas les attributs qui sont sortis. |
Importer
|
Le bouton d'import remplit la table avec un jeu de nouveaux attributs lus depuis un jeu de données. L'application spécifique varie selon les Transformers. |
Réinitialiser/Rafraîchir
|
Réinitialise la table à son état initial, et peut fournir des options additionnelles pour supprimer des entrées invalides. Le comportement varie d'un Transformer à l'autre. |
Note : Tous les outils ne sont pas disponibles dans tous les Transformers.
Références
Comportement |
|
Stockage des entités |
Non |
Dépendances | |
Alias | H3Indexer |
Historique |
FME Community
FME Community iest l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.
Rechercher tous les résultats sur ce Transformer sur FME Community.
Les exemples peuvent contenir des informations sous licence Open Government - Vancouver et/ou Open Government - Canada.