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 网络和主机地址