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.

Aller à la configuration

Cas d'utilisation courants

  • 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 ressort. 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 sur 16.

  • 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 sur 10.

Configuration

Ports d'entrée

Ports de sortie

Paramètres

É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 de 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 de traitement. 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.

Options - Tables

Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.

Références

Comportement

Basé sur des entités

Stockage des entités

Non

Dépendances  
Alias H3Indexer
Historique  

FME Community

FME Community est 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.

Voir tous les résultats à propos de ce Transformer sur FME Community.

 

Les exemples peuvent contenir des informations sous licence Open Government - Vancouver et/ou Open Government - Canada.