本文介紹Lindorm Ganos服務的空間數據類型和數據格式。
Geometry類型及其子類
Lindorm Ganos支持的空間數據類型如下表:
數據類型 | 描述 | 使用示例 |
Geometry | 表示通用的空間對象,是Point、LineString、Polygon、MultiPoint、MultiPolygon、MultiLineString和GeometryCollection的父類型。不建議直接將空間列定義為Geometry。 說明
| 創建時空數據表時指定空間列的數據類型。 |
Point | 表示點類型數據,由坐標經度x和緯度y組成。 說明 不支持三維點坐標的計算,存儲的三維點在計算時會被轉為二維點。 | 車輛、船舶接收到的GPS坐標信息。 |
LineString | 表示線類型數據,由兩個或多個點組成。前一條線段的終點是下一條線段的起點。 說明 一條線段必須有兩個及以上的點,連續頂點可以相等。 |
|
Polygon | 表示面類型數據,面的外邊界是一個閉合的環,即起點和終點的坐標x、y是相等的。 說明 一個面至少需要三個點才能組成。 |
|
MultiPoint | 表示零個或多個Point的集合。 | 游樂園所有售票處。 |
MultiLineString | 表示零條或多條LineString的集合。 | 一條由多個LineString組成的街道。 |
MultiPolygon | 表示零個或多個Polygon的集合。 | 一個由多個縣或區組成的市。每個縣或區都是一個Polygon。 |
GeometryCollection | 表示零個或多個Geometry的集合。 | 多種圖形的集合。 |
Geometry類型的構造
將點坐標格式構造為Geometry對象
使用時空函數ST_MakePoint
將數值類型的點坐標數據構造為Geometry Point對象,或使用時空函數ST_LineFromMultiPoint
數值類型的點坐標數據構造為Geometry LineString對象,詳細介紹,請參見構造函數 。
將WKT格式構造為Geometry對象
WKT格式說明
WKT是開放地理空間信息聯盟(Open Geospatial Consortium,簡稱OGC)定義的一種用文本來描述空間對象的格式,有關WKT的介紹請參見Well-know Text。Lindorm Ganos支持通過WKT文本格式來表達點(Point)、線(LineString)、面(Polygon)、多點(MultiPoint)、多線(MultiLineString)、多面(MultiPolygon)、幾何對象集合(GeometryCollection)七種空間數據類型,不支持WKT信息中帶有SRID(Spatial Reference IDentifier)。
Lindorm Ganos支持的WKT數據類型如下表:
數據類型 | 語法 | WKT示例 |
Point |
|
|
LineString |
|
|
Polygon |
|
|
MultiPoint |
|
|
MultiLineString |
|
|
MultiPolygon |
|
|
GeometryCollection | GeometryCollection (Point/LineString/Polygon/MultiPoint/MultiLineString/MultiPolygon) |
|
構造方法
使用時空函數ST_GeomFromText
將WKT構造為Geometry對象。詳細介紹,請參見構造函數。
Geometry類型的輸出
將Geometry對象輸出為WKB字符串
WKB是OGC定義的一種通過序列化字節來描述幾何對象的格式,有關WKB的介紹請參見Well-known Binary。Lindorm Ganos支持通過WKB來表達點(Point)、線(LineString)、面(Polygon)、多點(MultiPoint)、多線(MultiLineString)、多面(MultiPolygon)、幾何對象集合(GeometryCollection)七種空間數據類型。
Geometry類型直接輸出時,顯示的是Geometry對象WKB格式的16進制字符串。示例如下:
SELECT ST_GeomFromText('POINT(-10.1 3.3)') as p;
返回結果:
+--------------------------------+
| p |
+--------------------------------+
| 0020000001000010E6C02433333333 |
| 3333400A666666666666 |
+--------------------------------+
將Geometry對象輸出為WKT
使用時空函數ST_AsText
將Geometry對象輸出為WKT格式。詳細介紹,請參見輸出函數。