?
Ce document utilise Manuel du site Web PHP chinois Libérer
幾何數(shù)據(jù)類型表示二維的平面物體。Table 8-20顯 示了PostgreSQL里面可用的幾何類型。 最基本的類型:點,是其它類型的基礎(chǔ)。
Table 8-20. 幾何類型
名字 | 存儲空間 | 說明 | 表現(xiàn)形式 |
---|---|---|---|
point | 16字節(jié) | 平面中的點 | (x,y) |
line | 32字節(jié) | (無窮)直線(未完全實現(xiàn)) | ((x1,y1),(x2,y2)) |
lseg | 32字節(jié) | (有限)線段 | ((x1,y1),(x2,y2)) |
box | 32字節(jié) | 矩形 | ((x1,y1),(x2,y2)) |
path | 16+16n字節(jié) | 閉合路徑(與多邊形類似 | ((x1,y1),...) |
path | 16+16n字節(jié) | 開放路徑 | [(x1,y1),...] |
polygon | 40+16n字節(jié) | 多邊形(與閉合路徑相似) | ((x1,y1),...) |
circle | 24字節(jié) | 圓 | <(x,y),r> (圓心和半徑) |
我們有一系列豐富的函數(shù)和操作符可用來進行各種幾何計算, 如拉伸、轉(zhuǎn)換、旋轉(zhuǎn)、計算相交等。它們在Section 9.11里有解釋。
點是幾何類型的基本二維構(gòu)造單位。使用下面任一語法描述point的數(shù)值:
( x , y ) x , y
這里的x和y是用浮點數(shù)表示的點的坐標。
點輸出使用第一種語法。
線段(lseg)是用一對點來代表的。lseg的值用下面語法聲明:
[ ( x1 , y1 ) , ( x2 , y2 ) ] ( ( x1 , y1 ) , ( x2 , y2 ) ) ( x1 , y1 ) , ( x2 , y2 ) x1 , y1 , x2 , y2
這里的(x1,y1)和 (x2,y2)是線段的端點。
線段輸出使用第一種語法。
矩形是用一對對角點來表示的。box的值用下面語法聲明:
( ( x1 , y1 ) , ( x2 , y2 ) ) ( x1 , y1 ) , ( x2 , y2 ) x1 , y1 , x2 , y2
這里的(x1,y1)和(x2,y2)是矩形的一對對角點。
通過第二種語法輸出矩形。
任何兩個對角都可以出現(xiàn)在輸入中,但按照那樣的順序,右上角和左下角的值會被重新排序以存儲。
路徑由一系列連接的點組成。路徑可能是開放的,也就是認為列表 中第一個點和最后一個點沒有連接,也可能是閉合的, 這時認為第一個和最后一個點連接起來。
path的數(shù)值用下面語法聲明:
[ ( x1 , y1 ) , ... , ( xn , yn ) ] ( ( x1 , y1 ) , ... , ( xn , yn ) ) ( x1 , y1 ) , ... , ( xn , yn ) ( x1 , y1 , ... , xn , yn ) x1 , y1 , ... , xn , yn
這里的點是組成路徑的線段的端點。方括弧([])表明一個開放的路徑 ,圓括弧(())表明一個閉合的路徑。當最外層的括號被省略,如 在第三至第五語法,會假定一個封閉的路徑。
路徑的輸出使用第一種或第二種語法輸出,在適當?shù)臅r候。
多邊形由一系列點代表(多邊形的頂點)。多邊形可以認為與閉合路徑一樣, 但是存儲方式不一樣而且有自己的一套支持函數(shù)。
polygon的數(shù)值用下列任一語法聲明:
( ( x1 , y1 ) , ... , ( xn , yn ) ) ( x1 , y1 ) , ... , ( xn , yn ) ( x1 , y1 , ... , xn , yn ) x1 , y1 , ... , xn , yn
這里的點是多邊形的端點。
多邊形輸出使用第一種語法。
圓由一個圓心和一個半徑標識。circle的數(shù)值用任一下面語法表示:
< ( x , y ) , r > ( ( x , y ) , r ) ( x , y ) , r x , y , r
這里的(x,y)是圓心,r是半徑。
圓的輸出用第一種格式。