Geometry
是階層的根類別。它是一個不可實例化的類別,但具有一些屬性(如下列表所述),這些屬性對於從任何 Geometry
子類別建立的所有幾何值都是通用的。特定的子類別有它們自己的特定屬性,稍後描述。
Geometry 屬性
幾何值具有以下屬性
它的類型。每個幾何圖形都屬於階層中的一個可實例化的類別。
它的 SRID 或空間參考識別碼。此值識別幾何圖形相關聯的空間參考系統,該系統描述幾何物件定義所在的座標空間。
在 MySQL 中,SRID 值是一個與幾何值關聯的整數。可使用的最大 SRID 值是 232−1。如果給定的值較大,則只使用較低的 32 位元。
SRID 0 表示無限的平面笛卡爾平面,其軸未指定單位。為了確保 SRID 0 的行為,請使用 SRID 0 建立幾何值。如果未指定 SRID,則 SRID 0 是新幾何值的預設值。
對於多個幾何值的計算,所有值必須具有相同的 SRID,否則會發生錯誤。
它在空間參考系統中的座標,表示為雙精度(8 位元組)數字。所有非空幾何圖形都至少包含一對 (X,Y) 座標。空幾何圖形不包含座標。
座標與 SRID 相關。例如,在不同的座標系統中,即使物件具有相同的座標,兩個物件之間的距離也可能不同,因為平面座標系統上的距離與大地系統(地球表面的座標)上的距離是不同的。
它的內部、邊界和外部。
每個幾何圖形都佔據空間中的某個位置。幾何圖形的外部是幾何圖形未佔用的所有空間。內部是幾何圖形佔用的空間。邊界是幾何圖形內部和外部之間的介面。
它的MBR(最小邊界矩形),或外殼。這是由最小和最大 (X,Y) 座標形成的邊界幾何圖形
((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))
該值是簡單還是非簡單。類型為 (
LineString
、MultiPoint
、MultiLineString
) 的幾何值是簡單的或非簡單的。每種類型都會決定它自己關於簡單或非簡單的斷言。該值是封閉還是未封閉。類型為 (
LineString
、MultiString
) 的幾何值是封閉的或未封閉的。每種類型都會決定它自己關於封閉或未封閉的斷言。該值是空還是非空。如果幾何圖形沒有任何點,則該幾何圖形為空。空幾何圖形的外部、內部和邊界未定義(也就是說,它們由
NULL
值表示)。空幾何圖形被定義為始終簡單,且面積為 0。它的維度。幾何圖形的維度可以是 −1、0、1 或 2
−1 表示空幾何圖形。
0 表示沒有長度和面積的幾何圖形。
1 表示具有非零長度和零面積的幾何圖形。
2 表示具有非零面積的幾何圖形。
Point
物件的維度為零。LineString
物件的維度為 1。Polygon
物件的維度為 2。MultiPoint
、MultiLineString
和MultiPolygon
物件的維度與它們所組成的元素相同。