1. 程式人生 > >MySQL中的GIS幾何函數和空間分析函數

MySQL中的GIS幾何函數和空間分析函數

close 包含 對象 線段 sed 切割 cts 坐標系 幾何

MySQL空間擴展不僅提供了空間數據的存儲能力,而且還具備一些空間運算能力,這些功能通過MySQL內建的幾何函數實現。最簡單的幾何函數昨天已經有所涉及,也就是轉換WTK的GEOMFROMTEXT和ASTEXT。除此以外,不同的幾何對象還具有不同的功能函數。

幾何類的函數
DIMENSION,返回對象的尺寸,-1為空,0為點(沒有長度沒有面積),1為線(有長度而沒有面積),2為多邊形(有面積);
ENVELOPE,返回最小邊界矩形;
GEOMERYTYPE,返回幾何類型(字符串)
SRID,所謂SRID是空間基準坐標指示符,表示一個幾何類型的坐標系統。

點對象的函數
X,Y兩個函數用於返回點的X坐標和Y坐標

線對象的函數
GLENGTH,返回線長
ISCLOSED,是否為封閉線段
NUMPOINTS,線段包含點的數目
STARTPOINT,ENDPOINT,POINTN,分別返回起點,終點和指定位置的點

多邊形對象的函數
AREA,返回多邊形面積
EXTERIORRING,返回線型的外環
INTERIORRINGN,返回指定的內環(對於包含空洞的多邊形)
NUMINTERIORRINGS,返回空洞數目

幾何集合對象的函數
GEOMETRYN,返回指定位置的幾何類型
NUMGEOMETRIES,返回對象數目

空間分析操作函數
OpenGIS的空間分析操作函數目前還沒有被MySQL完全支持,包括作緩沖區、聯合、切割等操作還不能通過MySQL直接完成。

最小邊界矩形空間關系函數
MySQL提供了一組函數來判斷幾個對象和最小邊界矩形的位置關系
MBRCONTAINS
MBRDISJOINT
MBREQUAL
MBRINTERSECTS
MBROVERLAPS
MBRTOUCHES
MBRWITHIN

幾何對象空間關系函數
MySQL5尚未實現以下幾何對象的空間關系分析功能。
CONTAINS
CROSSES
DISJOINT
DISTANCE
EQUALS
INTERSECTS
OVERLAPS
RELATED
TOUCHES
WITHIN

MySQL中的GIS幾何函數和空間分析函數