このトピックでは、Lindorm GanosBase でサポートされている空間データの型と形式について説明します。
ジオメトリとそのサブタイプ
次の表に、Lindorm GanosBase でサポートされているジオメトリデータ型とそのサブタイプを示します。
データ型 | 説明 | 例 |
Geometry | すべての空間データの一般的な型です。Geometry オブジェクトには、Point オブジェクト、LineString オブジェクト、Polygon オブジェクト、MultiPoint オブジェクト、MultiPolygon オブジェクト、MultiLineString オブジェクト、GeometryCollection オブジェクトなどのサブタイプのオブジェクトが含まれます。空間列のデータ型を Geometry に設定しないことをお勧めします。 説明
| spatio-temporal テーブルを作成するときに、空間列のデータ型を指定します。 |
Point | Point オブジェクトのデータ型です。Point オブジェクトは、経度 x と緯度 y で構成される座標によって識別されます。 説明 3 次元 Point オブジェクトは計算に使用できません。Lindorm GanosBase は、計算時に 3 次元 Point オブジェクトを 2 次元 Point オブジェクトに変換します。 | 車両や船舶で受信した GPS 座標を指定します。 |
LineString | LineString オブジェクトのデータ型です。LineString オブジェクトは、2 つ以上の Point オブジェクトで構成されます。LineString オブジェクトでは、線分の終点は次の線分の始点である必要があります。 説明 線分は、2 つ以上の Point オブジェクトで構成されている必要があります。2 つの線分は同じ頂点を持つことができます。 |
|
Polygon | Polygon オブジェクトのデータ型です。Polygon オブジェクトの外側の境界は閉じた線です。線の始点と終点の座標は同じです。 説明 Polygon オブジェクトは、少なくとも 3 つの Point オブジェクトで識別できます。 |
|
MultiPoint | 0 個以上の Point オブジェクトのコレクションです。 | 遊園地内のすべてのチケット売り場を指定します。 |
MultiLineString | 0 個以上の LineString オブジェクトのコレクションです。 | 複数の LineString オブジェクトで構成される道路を指定します。 |
MultiPolygon | 0 個以上の Polygon オブジェクトのコレクションです。 | 1 つ以上の郡または地区で構成される都市を指定します。各郡または地区は、Polygon オブジェクトで表されます。 |
GeometryCollection | 0 個以上のジオメトリオブジェクトのコレクションです。 | 複数のグラフィックのコレクションを指定します。 |
ジオメトリオブジェクトの構築
ポイント座標に基づいてジオメトリオブジェクトを構築する
ST_MakePoint 関数を使用してポイント座標に基づいて Point オブジェクトを構築するか、ST_LineFromMultiPoint 関数を使用してポイント座標に基づいて LineString オブジェクトを構築できます。詳細については、「ジオメトリコンストラクター」をご参照ください。
WKT 文字列に基づいてジオメトリオブジェクトを構築する
WKT 形式
WKT は、Open Geospatial Consortium(OGC)によって定義された形式です。WKT はテキストを使用して空間オブジェクトを記述します。WKT の詳細については、「Well-Known Text」を参照してください。Lindorm GanosBase では、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon などのタイプのジオメトリオブジェクトを WKT 形式で指定できます。WKT 形式の空間情報には、Spatial Reference IDentifier(SRID)を含めることができません。
次の表に、Lindorm GanosBase でサポートされている WKT データ型を示します。
データ型 | 構文 | 例 |
Point |
|
|
LineString |
|
|
Polygon |
|
|
MultiPoint |
|
|
MultiLineString |
|
|
MultiPolygon |
|
|
GeometryCollection | GeometryCollection (Point/LineString/Polygon/MultiPoint/MultiLineString/MultiPolygon) |
|
構築方法
ST_GeomFromText 関数を使用して、WKT 文字列に基づいてジオメトリオブジェクトを構築できます。詳細については、「ジオメトリコンストラクター」をご参照ください。
Geometry オブジェクトの出力
Geometry オブジェクトを WKB 文字列として出力する
WKB は、OGC によって定義された形式です。WKB は、シリアル化バイトを使用して空間オブジェクトを記述します。WKB の詳細については、「Well-Known Binary」を参照してください。Lindorm GanosBase では、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon などのタイプのジオメトリオブジェクトを WKB 形式で指定できます。
ジオメトリオブジェクトは、16 進数の WKB 文字列として出力されます。次のステートメントは、ジオメトリオブジェクトを WKB 文字列として出力する方法の例を示しています。
SELECT ST_GeomFromText('POINT(-10.1 3.3)') as p;次の結果が返されます。
+--------------------------------+
| p |
+--------------------------------+
| 0020000001000010E6C02433333333 |
| 3333400A666666666666 |
+--------------------------------+Geometry オブジェクトを WKT 文字列として出力する
ST_AsText 関数を使用して、ジオメトリオブジェクトを WKT 文字列として出力できます。詳細については、「出力関数」をご参照ください。