Saltar al contenido principal

índice H3

H3 es un sistema de indexación geográfica en el que la superficie de la Tierra se divide en una cuadrícula de celdas hexagonales uniformes. Este sistema es jerárquico; es decir, cada hexágono del nivel superior (“padre”) puede dividirse en siete hexágonos uniformes, pero más pequeños (“hijos”), y así sucesivamente. El nivel de la jerarquía se denomina resolution y puede tomar un valor de 0 a 15, donde 0 es el nivel base, con las celdas más grandes y menos detalladas. Un par de latitud y longitud puede transformarse en un índice H3 de 64 bits, que identifica una celda de la cuadrícula. El índice H3 se utiliza principalmente para agrupar ubicaciones y realizar otras manipulaciones geoespaciales. La descripción completa del sistema H3 está disponible en el sitio de Uber Engineering.

h3IsValid

Comprueba si el número es un índice H3 válido. Sintaxis
Parámetro
  • h3index — Número de índice hexagonal. UInt64.
Valores devueltos
  • 1 — El número es un índice H3 válido. UInt8.
  • 0 — El número no es un índice H3 válido. UInt8.
Ejemplo
Query
Response

h3GetResolution

Define la resolución del índice H3 dado. Sintaxis
Parámetro
  • h3index — Número de índice hexagonal. UInt64.
Valores devueltos
  • Resolución del índice. Rango: [0, 15]. UInt8.
  • Si el índice no es válido, la función devuelve un valor aleatorio. Use h3IsValid para verificar el índice. UInt8.
Ejemplo
Query
Response

h3EdgeAngle

Calcula la longitud media del lado de un hexágono H3 en grados. Sintaxis
Parámetro
  • resolution — Resolución del índice. UInt8. Rango: [0, 15].
Valores devueltos
  • La longitud media de la arista de un hexágono H3 en grados. Float64.
Ejemplo
Query
Response

h3EdgeLengthM

Calcula la longitud media de la arista de un hexágono H3 en metros. Sintaxis
Parámetro
  • resolution — Resolución del índice. UInt8. Intervalo: [0, 15].
Valores devueltos
  • La longitud media de la arista de un hexágono H3, en metros. Float64.
Ejemplo
Query
Response

h3EdgeLengthKm

Calcula la longitud media de la arista de un hexágono H3 en kilómetros. Sintaxis
Parámetro
  • resolution — Resolución del índice. UInt8. Rango: [0, 15].
Valores devueltos
  • La longitud media de la arista de un hexágono H3, en kilómetros. Float64.
Ejemplo
Query
Response

geoToH3

Devuelve el índice H3 del punto (lat, lon) con la resolución especificada. Sintaxis
Argumentos
  • lat — Latitud. Float64.
  • lon — Longitud. Float64.
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valores devueltos
  • Número de índice hexagonal. UInt64.
  • 0 en caso de error. UInt64.
Nota: En ClickHouse v25.4 o anteriores, geoToH3() toma los valores en el orden (lon, lat). A partir de ClickHouse v25.5, los valores de entrada están en el orden (lat, lon). El comportamiento anterior puede restaurarse mediante la configuración geotoh3_argument_order = 'lon_lat'. Ejemplo
Query
Response

h3ToGeo

Devuelve la latitud y longitud del centroide correspondientes al índice H3 proporcionado. Sintaxis
Argumentos
  • h3Index — índice H3. UInt64.
Valores devueltos
  • Una tupla formada por dos valores: tuple(lat,lon). lat — Latitud. Float64. lon — Longitud. Float64.
Nota: En ClickHouse v24.12 o versiones anteriores, h3ToGeo() devuelve los valores en el orden (lon, lat). A partir de ClickHouse v25.1, los valores devueltos están en el orden (lat, lon). El comportamiento anterior se puede restaurar mediante la configuración h3togeo_lon_lat_result_order = true. Ejemplo
Query
Response

h3ToGeoBoundary

Devuelve un array de pares (lat, lon) que representan el límite del índice H3 proporcionado. Sintaxis
Argumentos
  • h3Index — índice H3. UInt64.
Valores devueltos Ejemplo
Query
Response

h3kRing

Enumera todos los H3 hexágonos en un radio de k a partir del hexágono dado, en orden aleatorio. Sintaxis
Argumentos
  • h3index — Número de índice hexagonal. UInt64.
  • k — Radio. entero
Valores devueltos Ejemplo
Query
Response

h3PolygonToCells

Devuelve los hexágonos (con la resolución especificada) que quedan dentro de la geometría proporcionada, ya sea un anillo o un (multi)polígono. Sintaxis
Argumentos Valores devueltos Ejemplo
Query
Response

h3PolygonToCellsWithContainment

Devuelve los hexágonos (con la resolución especificada) que cubren la geometría proporcionada, ya sea un anillo, un polígono o un multipolígono, utilizando modos experimentales de contención de H3. Esta función asigna los valores de flags a los modos de contención de H3:
  • 0CONTAINMENT_CENTER
  • 1CONTAINMENT_FULL
  • 2CONTAINMENT_OVERLAPPING
  • 3CONTAINMENT_OVERLAPPING_BBOX
Sintaxis
Argumentos
  • geometry puede ser uno de los siguientes Geo Data Types o de sus tipos primitivos subyacentes:
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
  • flags — Modo de contención. Rango: [0, 3]. Use literales enteros como 0, 1, 2 y 3, o valores UInt32 (por ejemplo, toUInt32(2)). Los valores se pasan a la API de H3 como UInt32. Los demás tipos enteros nativos se convierten mediante una conversión exacta.
Valores devueltos
  • Array de índices H3 según el modo de contención seleccionado. Array(UInt64).
Ejemplo
Query
Response

h3GetBaseCell

Devuelve el número de la celda base del índice H3. Sintaxis
Parámetro
  • index — Número de índice hexagonal. UInt64.
Valor devuelto
  • Número de la celda base del hexágono. UInt8.
Ejemplo
Query
Response

h3HexAreaM2

Devuelve el área promedio de un hexágono en metros cuadrados para la resolución especificada. Sintaxis
Parámetro
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valor devuelto
  • Área en metros cuadrados. Float64.
Ejemplo
Query
Response

h3HexAreaKm2

Devuelve el área promedio de un hexágono en kilómetros cuadrados para la resolución dada. Sintaxis
Parámetro
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valor devuelto
  • Área en kilómetros cuadrados. Float64.
Ejemplo
Query
Response

h3IndexesAreNeighbors

Devuelve si los índices H3 proporcionados son vecinos entre sí o no. Sintaxis
Argumentos
  • index1 — Número de índice hexagonal. UInt64.
  • index2 — Número de índice hexagonal. UInt64.
Valor devuelto
  • 1 — Los índices son vecinos. UInt8.
  • 0 — Los índices no son vecinos. UInt8.
Ejemplo
Query
Response

h3ToChildren

Devuelve un array con los índices hijos del índice H3 indicado. Sintaxis
Argumentos
  • index — Número de índice hexagonal. UInt64.
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valores devueltos Ejemplo
Query
Response

h3ToParent

Devuelve el índice padre (de menor resolución) que contiene el índice H3 dado. Sintaxis
Argumentos
  • index — Número de índice hexagonal. UInt64.
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valor devuelto Ejemplo
Query
Response

h3ToString

Convierte la representación H3Index del índice en su representación textual.
Parámetro
  • index — Número de índice hexagonal. UInt64.
Valor devuelto
  • Representación en cadena del índice H3. String.
Ejemplo
Query
Response

stringToH3

Convierte una representación en cadena a la representación H3Index (UInt64). Sintaxis
Parámetro
  • index_str — Representación en cadena del índice H3. String.
Valor devuelto
  • Número de índice hexagonal. Devuelve 0 en caso de error. UInt64.
Ejemplo
Query
Response

h3GetResolution

Devuelve la resolución del índice H3. Sintaxis
Parámetro
  • index — Número de índice hexagonal. UInt64.
Valor devuelto
  • Resolución del índice. Intervalo: [0, 15]. UInt8.
Ejemplo
Query
Response

h3IsResClassIII

Devuelve si el índice H3 tiene una resolución con orientación Clase III. Sintaxis
Parámetro
  • index — Número de índice hexagonal. UInt64.
Valor devuelto
  • 1 — El índice tiene una resolución con orientación de clase III. UInt8.
  • 0 — El índice no tiene una resolución con orientación de clase III. UInt8.
Ejemplo
Query
Response

h3IsPentagon

Devuelve si este índice H3 representa una celda pentagonal. Sintaxis
Parámetro
  • index — Número de índice hexagonal. UInt64.
Valor devuelto
  • 1 — El índice representa una celda pentagonal. UInt8.
  • 0 — El índice no representa una celda pentagonal. UInt8.
Ejemplo
Query
Response

h3GetFaces

Devuelve las caras del icosaedro que intersecta un índice H3 dado. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valores devueltos
  • Array que contiene las caras del icosaedro que intersecta un índice H3 dado. Array(UInt64).
Ejemplo
Query
Response

h3CellAreaM2

Devuelve el área exacta de una celda específica, en metros cuadrados, correspondiente al índice H3 de entrada proporcionado. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • Área de la celda en metros cuadrados. Float64.
Ejemplo
Query
Response

h3CellAreaRads2

Devuelve el área exacta de una celda específica en radianes cuadrados correspondiente al índice H3 proporcionado. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • Área de la celda en radianes cuadrados. Float64.
Ejemplo
Query
Response

h3ToCenterChild

Devuelve el índice H3 hijo central (de mayor resolución) contenido en el índice H3 dado, en la resolución especificada. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valores devueltos
  • Índice H3 del hijo central contenido en el H3 indicado, con la resolución dada. UInt64.
Ejemplo
Query
Response

h3ExactEdgeLengthM

Devuelve la longitud exacta de la arista unidireccional representada por el índice h3 de entrada, en metros. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • Longitud exacta del borde en metros. Float64.
Ejemplo
Query
Response

h3ExactEdgeLengthKm

Devuelve la longitud exacta, en kilómetros, de la arista unidireccional representada por el índice h3 proporcionado. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • Longitud exacta del borde en kilómetros. Float64.
Ejemplo
Query
Response

h3ExactEdgeLengthRads

Devuelve la longitud exacta de la arista unidireccional representada por el índice h3 de entrada, en radianes. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • Longitud exacta del borde en radianes. Float64.
Ejemplo
Query
Response

h3NumHexagons

Devuelve el número de índices H3 únicos para la resolución dada. Sintaxis
Parámetro
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valor devuelto
  • Número de índices H3. Int64.
Ejemplo
Query
Response

h3PointDistM

Devuelve la distancia de “círculo máximo” o “haversine” entre pares de puntos GeoCoord (latitud/longitud), en metros. Sintaxis
Argumentos
  • lat1, lon1 — Latitud y longitud del punto 1, en grados. Float64.
  • lat2, lon2 — Latitud y longitud del punto 2, en grados. Float64.
Valores devueltos
  • Distancia de Haversine o de círculo máximo, en metros. Float64.
Ejemplo
Query
Response

h3PointDistKm

Devuelve la distancia de “gran círculo” o “haversine” entre pares de puntos GeoCoord (latitud/longitud), en kilómetros. Sintaxis
Argumentos
  • lat1, lon1 — Latitud y longitud del punto 1 en grados. Float64.
  • lat2, lon2 — Latitud y longitud del punto 2 en grados. Float64.
Valores devueltos
  • Distancia haversine o de círculo máximo en kilómetros. Float64.
Ejemplo
Query
Response

h3PointDistRads

Devuelve la distancia de “círculo máximo” o “haversine” entre pares de puntos GeoCoord (latitud/longitud), en radianes. Sintaxis
Argumentos
  • lat1, lon1 — Latitud y longitud del punto1 en grados. Float64.
  • lat2, lon2 — Latitud y longitud del punto2 en grados. Float64.
Valores devueltos
  • Distancia de Haversine o de círculo máximo en radianes. Float64.
Ejemplo
Query
Response

h3GetRes0Indexes

Devuelve un array con todos los índices H3 de resolución 0. Sintaxis
Valores devueltos
  • Array con todos los índices H3 de resolución 0. Array(UInt64).
Ejemplo
Query
Response

h3GetPentagonIndexes

Devuelve todos los índices pentagonales de H3 con la resolución especificada. Sintaxis
Parámetro
  • resolution — Resolución del índice. Rango: [0, 15]. UInt8.
Valor devuelto
  • Array de todos los índices H3 pentagonales. Array(UInt64).
Ejemplo
Query
Response

h3Line

Devuelve la línea de índices entre los dos índices dados. Sintaxis
Parámetro
  • start — Número de índice del hexágono que representa un punto inicial. UInt64.
  • end — Número de índice del hexágono que representa un punto final. UInt64.
Valor devuelto Array de índices H3 que representa la línea de índices entre los dos índices proporcionados. Array(UInt64). Ejemplo
Query
Response

h3Distance

Devuelve la distancia en celdas de cuadrícula entre los dos índices proporcionados. Sintaxis
Parámetro
  • start — Número de índice del hexágono que representa un punto de inicio. UInt64.
  • end — Número de índice del hexágono que representa un punto final. UInt64.
Valor devuelto
  • Número de celdas de la cuadrícula. Int64.
Devuelve un número negativo si no se puede calcular la distancia. Ejemplo
Query
Response

h3HexRing

Devuelve los índices del anillo hexagonal centrado en el h3Index de origen proporcionado, de longitud k. Devuelve 0 si no se encontró ninguna distorsión pentagonal. Sintaxis
Parámetro
  • index — Número de índice del hexágono que representa el origen. UInt64.
  • k — Distancia. UInt64.
Valores devueltos Ejemplo
Query
Response

h3GetUnidirectionalEdge

Devuelve un índice H3 de una arista unidireccional a partir del origen y el destino proporcionados, y devuelve 0 en caso de error. Sintaxis
Parámetro
  • originIndex — Número de índice del hexágono de origen. UInt64.
  • destinationIndex — Número de índice del hexágono de destino. UInt64.
Valor devuelto
  • Número de índice del hexágono de la arista unidireccional. UInt64.
Ejemplo
Query
Response

h3UnidirectionalEdgeIsValid

Determina si el H3Index proporcionado es un índice de arista unidireccional válido. Devuelve 1 si es una arista unidireccional y 0 en caso contrario. Sintaxis
Parámetro
  • index — Número de índice del hexágono. UInt64.
Valor devuelto
  • 1 — El índice H3 es una arista unidireccional válida. UInt8.
  • 0 — El índice H3 no es una arista unidireccional válida. UInt8.
Ejemplo
Query
Response

h3GetOriginIndexFromUnidirectionalEdge

Devuelve el índice del hexágono de origen del H3Index de arista unidireccional. Sintaxis
Parámetro
  • edge — Número de índice del hexágono que representa una arista unidireccional. UInt64.
Valor devuelto
  • Número de índice del hexágono de origen. UInt64.
Ejemplo
Query
Response

h3GetDestinationIndexFromUnidirectionalEdge

Devuelve el índice del hexágono de destino a partir del H3Index de la arista unidireccional. Sintaxis
Parámetro
  • edge — Número de índice del hexágono que representa una arista unidireccional. UInt64.
Valor devuelto
  • Número de índice del hexágono de destino. UInt64.
Ejemplo
Query
Response

h3GetIndexesFromUnidirectionalEdge

Devuelve los índices de los hexágonos de origen y destino a partir del H3Index de arista unidireccional dado. Sintaxis
Parámetro
  • edge — Número de índice del hexágono que representa una arista unidireccional. UInt64.
Valor devuelto Una tupla formada por dos valores, tuple(origin,destination):
  • origin — Número de índice del hexágono de origen. UInt64.
  • destination — Número de índice del hexágono de destino. UInt64.
Devuelve (0,0) si la entrada proporcionada no es válida. Ejemplo
Query
Response

h3GetUnidirectionalEdgesFromHexagon

Devuelve todas las aristas unidireccionales del H3Index proporcionado. Sintaxis
Parámetro
  • index — Número de índice del hexágono que representa una arista unidireccional. UInt64.
Valor devuelto Array de índices H3 que representan cada arista unidireccional. Array(UInt64). Ejemplo
Query
Response

h3GetUnidirectionalEdgeBoundary

Devuelve las coordenadas que definen la arista unidireccional. Sintaxis
Parámetro
  • index — Número de índice del hexágono que representa una arista unidireccional. UInt64.
Valor devuelto Ejemplo
Query
Response
Última modificación el 3 de julio de 2026