Catégories :

Fonctions géospatiales

H3_POLYGON_TO_CELLS_STRINGS

Renvoie un ARRAY des valeurs VARCHAR des IDs hexadécimaux des cellules H3 dont les centres de gravité sont contenus par un polygone (spécifié par un objet GEOGRAPHY).

Voir aussi :

H3_POLYGON_TO_CELLS_STRINGS , H3_COVERAGE_STRINGS

Syntaxe

H3_POLYGON_TO_CELLS_STRINGS( <geography_polygon> , <target_resolution> )
Copy

Arguments

geography_polygon

Un objet GEOGRAPHY qui représente un polygone.

target_resolution

Un INTEGER compris entre 0 et 15 (inclus) spécifiant la résolution H3 que vous souhaitez utiliser pour les cellules H3 renvoyées.

La spécification de toute autre valeur INTEGER entraîne une erreur.

Renvoie

Renvoie un ARRAY de valeurs VARCHAR pour les IDs hexadécimaux des cellules H3 dont les centres de gravité sont contenus dans le polygone d’entrée spécifié.

Notes sur l’utilisation

  • La fonction utilise une approximation planaire, qui traite les points à la surface de la Terre comme s’ils étaient reliés par des lignes droites plutôt que par des arcs courbes. Si vous avez besoin d’une approximation sphérique, utilisez plutôt H3_COVERAGE_STRINGS.

  • Une cellule est considérée comme faisant partie du polygone si son centre de gravité est contenu dans le polygone.

Exemples

L’exemple suivant renvoie un ARRAY de valeurs VARCHAR représentant les IDs hexadécimaux des cellules H3 dont les centres de gravité sont contenus dans le polygone spécifié.

SELECT H3_POLYGON_TO_CELLS_STRINGS(
  TO_GEOGRAPHY(
    'POLYGON((-122.481889 37.826683,-122.479487 37.808548,-122.474150 37.808904,-122.476510 37.826935,-122.481889 37.826683))'),
  9) AS h3_cells_in_polygon;
Copy
+----------------------+
| H3_CELLS_IN_POLYGON  |
|----------------------|
| [                    |
|   "8928308715bffff", |
|   "89283087397ffff", |
|   "89283087023ffff", |
|   "892830870abffff", |
|   "89283087027ffff", |
|   "89283087033ffff", |
|   "8928308702fffff", |
|   "892830870bbffff", |
|   "89283087037ffff"  |
| ]                    |
+----------------------+