S2 インデックスでの作業用関数
S2Index
S2 は、すべての地理データが三次元の球体(地球儀に似た形状)上に表現される地理的インデクシングシステムです。
S2ライブラリでは、点はS2インデックスとして表現されます。これは、従来の(緯度、経度)ペアとは異なり、単位球の表面上の点を内部的にエンコードする特定の番号です。指定された点(緯度、経度)の形式に基づいてS2ポイントインデックスを取得するには、geoToS2 関数を使用します。また、指定されたS2ポイントインデックスに対応する地理的座標を取得するには、s2ToGeo 関数を使用します。
geoToS2
提供された座標 (longitude, latitude)
に対応する S2 ポイントインデックスを返します。
構文
引数
戻り値
- S2ポイントインデックス。 UInt64 。
例
クエリ:
結果:
s2ToGeo
提供された S2 ポイントインデックスに対応する地理的座標 (longitude, latitude)
を返します。
構文
引数
s2index
— S2インデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2GetNeighbors
提供された S2 に対応するS2隣接インデックスを返します。S2システムの各セルは、4つの測地線によって制約された四角形です。そのため、各セルには4つの隣接セルがあります。
構文
引数
s2index
— S2インデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2CellsIntersect
提供された2つの S2 セルが交差するかどうかを判断します。
構文
引数
s2index1
,s2index2
— S2インデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2CapContains
キャップがS2ポイントを含むかどうかを判断します。キャップは、平面によって切り取られた球の一部を表します。これは、球の上の点と度数で定義される半径によって決まります。
構文
引数
center
— キャップに対応するS2ポイントインデックス。 UInt64。degrees
— キャップの半径(度数)。 Float64。point
— S2ポイントインデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2CapUnion
与えられた2つの入力キャップを含む最小のキャップを決定します。キャップは、平面によって切り取られた球の一部を表します。これは、球の上の点と度数で定義される半径によって決まります。
構文
引数
center1
,center2
— 2つの入力キャップに対応するS2ポイントインデックス。 UInt64。radius1
,radius2
— 2つの入力キャップの半径(度数)。 Float64。
戻り値
例
クエリ:
結果:
s2RectAdd
与えられたS2ポイントを含むように境界矩形のサイズを増やします。S2システムでは、矩形はS2Regionの一種である S2LatLngRect
によって表され、緯度-経度空間の矩形を表します。
構文
引数
s2PointLow
— 矩形に対応する低いS2ポイントインデックス。 UInt64。s2PointHigh
— 矩形に対応する高いS2ポイントインデックス。 UInt64。s2Point
— 境界矩形が成長して含むべきターゲットS2ポイントインデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2RectContains
与えられた矩形がS2ポイントを含むかどうかを判断します。S2システムでは、矩形はS2Regionの一種である S2LatLngRect
によって表され、緯度-経度空間の矩形を表します。
構文
引数
s2PointLow
— 矩形に対応する低いS2ポイントインデックス。 UInt64。s2PointHigh
— 矩形に対応する高いS2ポイントインデックス。 UInt64。s2Point
— ターゲットS2ポイントインデックス。 UInt64 。
戻り値
1
— 矩形が与えられたS2ポイントを含む場合。0
— 矩形が与えられたS2ポイントを含まない場合。
例
クエリ:
結果:
s2RectUnion
この矩形と与えられた矩形の和を含む最小の矩形を返します。S2システムでは、矩形はS2Regionの一種である S2LatLngRect
によって表され、緯度-経度空間の矩形を表します。
構文
引数
s2Rect1PointLow
,s2Rect1PointHi
— 第一の矩形に対応する低いおよび高いS2ポイントインデックス。 UInt64。s2Rect2PointLow
,s2Rect2PointHi
— 第二の矩形に対応する低いおよび高いS2ポイントインデックス。 UInt64。
戻り値
例
クエリ:
結果:
s2RectIntersection
この矩形と与えられた矩形の交差部分を含む最小の矩形を返します。S2システムでは、矩形はS2Regionの一種である S2LatLngRect
によって表され、緯度-経度空間の矩形を表します。
構文
引数
s2Rect1PointLow
,s2Rect1PointHi
— 第一の矩形に対応する低いおよび高いS2ポイントインデックス。 UInt64。s2Rect2PointLow
,s2Rect2PointHi
— 第二の矩形に対応する低いおよび高いS2ポイントインデックス。 UInt64。
戻り値
s2UnionRect2PointLow
— 与えられた矩形の交差を含む矩形に対応する低いS2セルID。 UInt64。s2UnionRect2PointHi
— 与えられた矩形の交差を含む矩形に対応する高いS2セルID。 UInt64。
例
クエリ:
結果: