メインコンテンツへスキップ

H3 Index

H3 は地理空間インデックスシステムで、地球表面を均一な六角形セルのグリッドに分割します。このシステムは階層構造になっており、つまり最上位レベルの各六角形 (「親」) は、同じく均一でより小さい 7 つの六角形 (「子」) に分割でき、これがさらに繰り返されます。 この階層のレベルは resolution と呼ばれ、0 から 15 までの値を取ります。0 は、最も大きく粗いセルを持つ base レベルです。 緯度と経度の組は、グリッドセルを識別する 64 ビットの H3 インデックスに変換できます。 H3 インデックスは主に位置情報のグループ化や、そのほかの地理空間処理に使用されます。 H3 システムの完全な説明は、Uber Engineering のサイトで参照できます。

h3IsValid

数値が有効な H3 インデックスかどうかを検証します。 構文
パラメータ
  • h3index — 六角形インデックス番号。UInt64
戻り値
  • 1 — この数値は有効な H3 インデックスです。UInt8
  • 0 — この数値は有効な H3 インデックスではありません。UInt8
Query
Response

h3GetResolution

指定された H3 H3 インデックスの解像度を返します。 構文
パラメータ
  • h3index — 六角形インデックス番号。UInt64
戻り値
  • インデックスの解像度。範囲: [0, 15]UInt8
  • インデックスが無効な場合、この関数はランダムな値を返します。インデックスを確認するには h3IsValid を使用してください。UInt8
Query
Response

h3EdgeAngle

H3 の六角形セルの辺の平均長をグラード単位で計算します。 構文
パラメータ
  • resolution — インデックスの解像度。UInt8。範囲: [0, 15]
戻り値
  • H3 六角形の辺の平均長 (グレード) 。Float64
Query
Response

h3EdgeLengthM

H3 の六角形の辺の平均の長さをメートル単位で計算します。 構文
パラメータ
  • resolution — インデックスの解像度。UInt8。範囲: [0, 15]
戻り値
  • H3 の六角形の平均辺長 (メートル単位) 。Float64
Query
Response

h3EdgeLengthKm

H3 の六角形セルの辺の平均の長さをキロメートル単位で計算します。 構文
パラメータ
  • resolution — インデックスの解像度。UInt8。範囲: [0, 15]
戻り値
  • H3 の六角形の辺の平均の長さ (キロメートル) 。Float64
Query
Response

geoToH3

指定した解像度で、点 (lat, lon) に対応する H3 H3 インデックスを返します。 構文
Arguments
  • lat — 緯度。 Float64.
  • lon — 経度。 Float64.
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8.
戻り値
  • 六角形インデックス番号。 UInt64.
  • エラー時は 0。 UInt64.
注: ClickHouse v25.4 以前では、geoToH3()(lon, lat) の順序で値を受け取ります。ClickHouse v25.5 以降では、入力値の順序は (lat, lon) です。以前の動作は、設定 geotoh3_argument_order = 'lon_lat' を使用して復元できます。 Example
Query
Response

h3ToGeo

指定されたH3H3 インデックスに対応する重心の緯度と経度を返します。 構文
引数
  • h3Index — H3 インデックス。 UInt64
戻り値
  • 2 つの値で構成されるタプル: tuple(lat,lon)lat — 緯度。 Float64lon — 経度。 Float64
注: ClickHouse v24.12 以前では、h3ToGeo()(lon, lat) の順序で値を返します。ClickHouse v25.1 以降では、戻り値は (lat, lon) の順序になります。以前の動作は、設定 h3togeo_lon_lat_result_order = true を使用して復元できます。
Query
Response

h3ToGeoBoundary

指定されたH3 インデックスの境界に対応する (lat, lon) のペアからなる配列を返します。 構文
引数
  • h3Index — H3 インデックス。UInt64
戻り値
Query
Response

h3kRing

指定された hexagon を中心とする半径 k 以内のすべての H3 hexagons を、ランダムな順序で一覧表示します。 構文
引数
  • h3index — 六角形インデックス番号。UInt64
  • k — 半径。整数
戻り値
Query
Response

h3PolygonToCells

指定したジオメトリ (ring または (multi-)polygon) に含まれる、指定した resolution の六角形を返します。 構文
引数
  • geometry には、以下のいずれかの Geoデータ型 またはその基になるプリミティブ型を指定できます。
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • 含まれる H3 インデックス の Array。Array(UInt64)。
Query
Response

h3PolygonToCellsWithContainment

指定したジオメトリ (Ring または (multi-)Polygon) を、H3 の実験的な包含モードを使用して、指定した解像度の六角形セルでカバーして返します。 この関数では、flags を H3 の包含モードにマッピングします。
  • 0CONTAINMENT_CENTER
  • 1CONTAINMENT_FULL
  • 2CONTAINMENT_OVERLAPPING
  • 3CONTAINMENT_OVERLAPPING_BBOX
構文
引数
  • geometry には、次のいずれかの Geoデータ型 またはそれらの基になるプリミティブ型を指定できます。
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
  • flags — 包含モード。範囲: [0, 3]0123 などの整数リテラル、または UInt32 の値 (たとえば toUInt32(2)) を使用します。値は UInt32 として H3 API に渡されます。その他のネイティブ整数型は、厳密なキャストによって変換されます。
戻り値
  • 選択した包含モードに応じた H3 インデックス の Array。Array(UInt64)。
Query
Response

h3GetBaseCell

H3 インデックスのベースセル番号を返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 六角形のベースセルの番号。UInt8
Query
Response

h3HexAreaM2

指定した解像度における六角形の平均面積を平方メートル単位で返します。 構文
パラメーター
  • resolution — インデックスの解像度。範囲は [0, 15] です。UInt8
戻り値
  • 平方メートル単位の面積。Float64
Query
Response

h3HexAreaKm2

指定した解像度における六角形の平均面積を平方キロメートル単位で返します。 構文
パラメータ
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • 面積 (平方キロメートル) 。 Float64
Query
Response

h3IndexesAreNeighbors

指定された H3 索引同士が隣接しているかどうかを返します。 構文
引数
  • index1 — 六角形インデックス番号。UInt64
  • index2 — 六角形インデックス番号。UInt64
戻り値
  • 1 — インデックス同士は隣接しています。UInt8
  • 0 — インデックス同士は隣接していません。UInt8
Query
Response

h3ToChildren

指定された H3 索引の子索引の配列を返します。 構文
引数
  • index — 六角形インデックス番号。 UInt64
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • 子 H3 インデックスの Array。 Array(UInt64)。
Query
Response

h3ToParent

指定された H3 インデックスを含む親 (より粗い粒度の) インデックスを返します。 構文
引数
  • index — 六角形インデックス番号。UInt64
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
Query
Response

h3ToString

インデックスの H3Index 表現を文字列表現に変換します。
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • H3インデックスの文字列表現。String
Query
Response

stringToH3

文字列表現を H3Index (UInt64) 形式に変換します。 構文
パラメーター
  • index_str — H3インデックスの文字列表現。String
戻り値
  • 六角形インデックス番号。エラー時は 0 を返します。UInt64
Query
Response

h3GetResolution

H3 インデックスの解像度を返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64.
戻り値
  • インデックスの解像度。範囲: [0, 15]UInt8.
Query
Response

h3IsResClassIII

H3 インデックスが Class III 向きの解像度かどうかを返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 1 — インデックスの解像度が Class III オリエンテーションである。UInt8
  • 0 — インデックスの解像度が Class III オリエンテーションではない。UInt8
Query
Response

h3IsPentagon

この H3 インデックスが五角形セルを表しているかどうかを返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 1 — インデックスが五角形セルを表す場合。UInt8
  • 0 — インデックスが五角形セルを表さない場合。UInt8
Query
Response

h3GetFaces

指定された H3 インデックスが交差する正二十面体の面を返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 指定された H3インデックスと交差する正二十面体の面を含む Array。Array(UInt64)。
Query
Response

h3CellAreaM2

指定された H3 インデックスに対応する特定のセルの正確な面積を、平方メートル単位で返します。 構文
パラメータ
  • index — 六角形インデックス番号。 UInt64.
戻り値
  • セルの面積 (平方メートル単位) 。 Float64.
Query
Response

h3CellAreaRads2

指定された入力H3 インデックスに対応する特定のセルの面積を、平方ラジアン単位で正確に返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 平方ラジアンで表したセルの面積。Float64
Query
Response

h3ToCenterChild

指定した解像度で、指定した H3 に含まれる中央の子 (より細かい) H3 インデックスを返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • 指定した解像度における、指定された H3 に含まれる中心の子 H3 のインデックス。UInt64
Query
Response

h3ExactEdgeLengthM

入力されたH3 インデックスが表す単方向エッジの正確な長さを、メートル単位で返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 辺の長さ (メートル単位) の正確な値。Float64
Query
Response

h3ExactEdgeLengthKm

入力された h3 index が表す単方向エッジの厳密な長さを、キロメートル単位で返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • キロメートル単位の辺の正確な長さ。Float64
Query
Response

h3ExactEdgeLengthRads

入力された H3 インデックス が表す単方向エッジの正確な長さを、ラジアン単位で返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • ラジアン単位での正確な辺の長さ。Float64
Query
Response

h3NumHexagons

指定された分解能における一意の H3 インデックス数を返します。 構文
パラメータ
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • H3 索引の数。Int64
Query
Response

h3PointDistM

GeoCoord 点 (緯度/経度) のペア間の「大円距離」または「ハバーサイン距離」をメートル単位で返します。 構文
引数
  • lat1, lon1 — 点1の緯度と経度 (度数) 。Float64
  • lat2, lon2 — 点2の緯度と経度 (度数) 。Float64
戻り値
  • メートル単位のハバーサイン距離、または大円距離。Float64
Query
Response

h3PointDistKm

GeoCoord 点 (緯度/経度) のペア間の「大円距離」または「ハバーサイン距離」を、キロメートル単位で返します。 構文
引数
  • lat1, lon1 — 点1の緯度と経度 (度) 。Float64
  • lat2, lon2 — 点2の緯度と経度 (度) 。Float64
戻り値
  • ハバーサイン距離、または大円距離 (キロメートル) 。Float64
Query
Response

h3PointDistRads

GeoCoord 点のペア (緯度/経度) 間の「大円距離」または「ハバーサイン距離」をラジアン単位で返します。 構文
引数
  • lat1, lon1 — 点1の緯度と経度 (度単位) 。Float64
  • lat2, lon2 — 点2の緯度と経度 (度単位) 。Float64
戻り値
  • ラジアン単位のハバーサイン距離または大円距離。Float64
Query
Response

h3GetRes0Indexes

解像度0のすべてのH3インデックスを含む配列を返します。 構文
戻り値
  • 解像度 0 のすべての H3 インデックス からなる Array。Array(UInt64)。
Query
Response

h3GetPentagonIndexes

指定した解像度における、すべての五角形の H3 インデックスを返します。 構文
パラメーター
  • resolution — インデックスの解像度。範囲: [0, 15]UInt8
戻り値
  • すべての五角形の H3 インデックス を格納した Array。Array(UInt64)。
Query
Response

h3Line

指定された2つのインデックス間を結ぶインデックスのラインを返します。 構文
パラメータ
  • start — 始点を表す六角形インデックス番号。UInt64
  • end — 終点を表す六角形インデックス番号。UInt64
戻り値 指定された2つのインデックスを結ぶインデックス列を表す h3 インデックスの Array。Array(UInt64)。
Query
Response

h3Distance

指定された2つのインデックス間の距離を、グリッドセル単位で返します。 構文
パラメータ
  • start — 開始点を表す六角形インデックス番号。UInt64
  • end — 終了点を表す六角形インデックス番号。UInt64
戻り値
  • グリッドセルの数。Int64
距離の計算に失敗した場合は、負の数を返します。
Query
Response

h3HexRing

指定された始点 h3Index を中心とする距離 k の六角形リングの索引を返します。 五角形による歪みが発生しなかった場合は 0 を返します。 構文
パラメータ
  • index — 始点を表す六角形インデックス番号。UInt64
  • k — 距離。UInt64
戻り値
Query
Response

h3GetUnidirectionalEdge

指定された始点と宛先に基づいて単方向エッジの H3 インデックスを返します。エラー時には 0 を返します。 構文
パラメータ
  • originIndex — 始点の六角形インデックス番号。UInt64
  • destinationIndex — 宛先の六角形インデックス番号。UInt64
戻り値
  • 単方向エッジの六角形インデックス番号。UInt64
Query
Response

h3UnidirectionalEdgeIsValid

指定された H3Index が有効な単方向エッジのインデックスかどうかを判定します。単方向エッジであれば 1、そうでなければ 0 を返します。 構文
パラメータ
  • index — 六角形インデックス番号。UInt64
戻り値
  • 1 — H3インデックスが有効な単方向エッジです。UInt8
  • 0 — H3インデックスは有効な単方向エッジではありません。UInt8
Query
Response

h3GetOriginIndexFromUnidirectionalEdge

単方向エッジ H3Index から始点の六角形インデックスを返します。 構文
パラメータ
  • edge — 一方向エッジを表す六角形インデックス番号。UInt64
戻り値
  • 始点の六角形インデックス番号。UInt64
Query
Response

h3GetDestinationIndexFromUnidirectionalEdge

単方向エッジの H3Index から、宛先の六角形インデックスを返します。 構文
パラメータ
  • edge — 単方向エッジを表す六角形インデックス番号。UInt64
戻り値
  • 宛先の六角形インデックス番号。UInt64
Query
Response

h3GetIndexesFromUnidirectionalEdge

指定された単方向エッジ H3Index から、始点と宛先の六角形の索引を返します。 構文
パラメータ
  • edge — 単方向エッジを表す六角形インデックス番号。UInt64
戻り値 2つの値 tuple(origin,destination) で構成されるタプル:
  • origin — 始点の六角形インデックス番号。UInt64
  • destination — 宛先の六角形インデックス番号。UInt64
与えられた入力が無効な場合は (0,0) を返します。
Query
Response

h3GetUnidirectionalEdgesFromHexagon

指定された H3Index から伸びるすべての単方向エッジを返します。 構文
パラメータ
  • index — 一方向エッジを表す六角形インデックス番号。UInt64
戻り値 各一方向エッジを表す H3 index の Array。Array(UInt64)。
Query
Response

h3GetUnidirectionalEdgeBoundary

単方向エッジを構成する座標を返します。 構文
パラメータ
  • index — 一方向エッジを表す六角形インデックス番号。UInt64
戻り値
Query
Response
最終更新日 2026年7月3日