PostgreSQL
上一頁 第三章. 數據型態 下一頁

幾何型態

幾何型態表示二維的平面物體。最基本的型態:點,是其他型態的基礎。

表 3-18. Postgres 幾何型態
 
幾何型態 儲存空間 表達 描述
point 16 bytes (x,y) 空間中一點
line 32 bytes ((x1,y1),(x2,y2)) (無窮)直線
lseg 32 bytes ((x1,y1),(x2,y2)) 線段
box 32 bytes ((x1,y1),(x2,y2)) 長方形
path 4+32n bytes ((x1,y1),...) 閉合路徑(與多邊形類似)
path 4+32n bytes [(x1,y1),...] 開放路徑
polygon 4+32n bytes ((x1,y1),...) 多邊形(與閉合路徑相似)
circle 24 bytes <(x,y),r> 圓(圓心和半徑)

一系列豐富的函數和符號可用來進行各種幾何計算,如度量,轉換,旋轉和計算相交等。

Point(點)

點是集合型態的基本二維構造單位。

用下面語法描述 point

( x , y )
  x , y
這裡的參數是
x
是用一個浮點數表示的點的 x 坐標。
y
y 是用一個浮點數表示的點的 y 坐標。

線段

線段(lseg)是用一對點來代表的。

lseg 用下面語法聲明:

( ( x1 , y1 ) , ( x2 , y2 ) )
  ( x1 , y1 ) , ( x2 , y2 )  
    x1 , y1   ,   x2 , y2
這裡的參數是
(x1,y1), (x2,y2)
是線段的端點。

Box(方)

方是用一對對角點來表示的。

box 用下面語法聲明:

( ( x1 , y1 ) , ( x2 , y2 ) )
  ( x1 , y1 ) , ( x2 , y2 )  
    x1 , y1   ,   x2 , y2
這裡的參數是
(x1,y1), (x2,y2)
是一對對角點。
方的輸出使用第一種語法。在輸入時將按先左下角後右上角的順序重新排列。你也可以輸入其他的一對對角點。但輸入時將按照先左下角後右上角的順序重排並儲存。

Path(路徑)

路徑由一系列連接的點組成。路徑可能是"開放"的,也就是第一個點和最後一個點沒有連接,也可能是"閉合"的,這時第一個和最後一個點連接起來。我們提供了函數 popen(p)pclose(p)來強制路徑是開放的還是閉合的,可以用函數 isopen(p)isclosed(p) 來在查詢中選擇是那種。

path 用下面語法聲明:

( ( x1 , y1 ) , ... , ( xn , yn ) )
[ ( x1 , y1 ) , ... , ( xn , yn ) ]
  ( x1 , y1 ) , ... , ( xn , yn )  
  ( x1 , y1   , ... ,   xn , yn )  
    x1 , y1   , ... ,   xn , yn    
這裡的參數是
(x,y)
組成路徑的線段的端點。前面的("[")表明一個開放的路徑,而前面的("(")表明一個閉合的路徑。
路徑的輸出使用第一種語法輸出。注意 Postgres v6.1以前的版本路徑的格式是由一個圓括號開始──一個"關閉標誌",一個點的計數然後後面是點的列表,最後是一個圓括號結束。有一個內建的函數upgradepath 可用於從6.1前版本輸出和重載路徑,將其轉換成新的。

Polygon(多邊形)

多邊形由一系列點代表。多邊形可以認為與閉合路徑一樣,但是儲存方式不一樣而且有自己的一套支援程序/函數。

polygon 用下列語法聲明:

( ( x1 , y1 ) , ... , ( xn , yn ) )
  ( x1 , y1 ) , ... , ( xn , yn )  
  ( x1 , y1   , ... ,   xn , yn )  
    x1 , y1   , ... ,   xn , yn    
這裡的參數是
(x,y)
組成多邊形邊界的線段的端點。
多邊形輸出使用第一種語法。要注意在 Postgres 版本v6.1前,多邊形的格式是一個圓括號開頭,後面是點的x坐標列表,然後是點的y坐標列表,最後是一個圓括號結束。用內建的函數upgradepoly 可用於從6.1前版本輸出和重載多邊形,將其轉換成新的。

Circle(圓)

圓由一個圓心和一個半徑代表。

circle 用下面語法表示:

< ( x , y ) , r >
( ( x , y ) , r )
  ( x , y ) , r  
    x , y   , r  
這裡的參數是
(x,y)
圓心
r
圓的半徑
圓的輸出用第一個格式。

上一頁 首頁 下一頁
布爾型態 開頭 IP 版本 4 網路和主機地址