PostgreSQL
上一页 第五章. 函数 下一页

几何函数

几何类型 point,box,lseg,line,path,polygon 和 circle 拥有很多的内置支持函数。

表 5-11. 几何函数
 
函数 返回 描述 例子
area(object) float8 目标的范围 area(box '((0,0),(1,1))')
box(box,box) box 方的交 box(box '((0,0),(1,1))',box '((0.5,0.5),(2,2))')
center(object) point 对象中心  center(box '((0,0),(1,2))')
diameter(circle) float8 圆直径 diameter(circle '((0,0),2.0)')
height(box) float8 方的竖直高度 height(box '((0,0),(1,1))')
isclosed(path) bool 是闭合路径吗? isclosed(path '((0,0),(1,1),(2,0))')
isopen(path) bool 是开环路径吗? isopen(path '[(0,0),(1,1),(2,0)]')
length(object) float8 对象长度 length(path '((-1,0),(1,0))')
pclose(path) path 把路径转换为闭合 popen(path '[(0,0),(1,1),(2,0)]')
npoint(path) int4 点数 npoints(path '[(0,0),(1,1),(2,0)]')
popen(path) path 把路径转换为开环的 popen(path '((0,0),(1,1),(2,0))')
radius(circle) float8 圆半径 radius(circle '((0,0),2.0)')
width(box) float8 水平尺寸(宽) width(box '((0,0),(1,1))')

表 5-13. 几何类型转换函数
 
函数 返回 描述 例子
box(circle)  box  将圆转换成长方形 box('((0,0),2.0)'::circle) 
box(point,point)  box  将点转换成长方形 box('(0,0)'::point,'(1,1)'::point) 
box(polygon)  box  将多边形转换成长方形  box('((0,0),(1,1),(2,0))'::polygon) 
circle(box)  circle  转换成圆 circle('((0,0),(1,1))'::box) 
circle(point,float8)  circle  转换成圆 circle('(0,0)'::point,2.0) 
lseg(box)  lseg  将长方形转成线段 lseg('((-1,0),(1,0))'::box) 
lseg(point,point)  lseg  转换成线段 lseg('(-1,0)'::point,'(1,0)'::point) 
path(polygon)  point  转换成路径 path('((0,0),(1,1),(2,0))'::polygon) 
point(circle)  point  转换成点 (中心)  point('((0,0),2.0)'::circle) 
point(lseg,lseg)  point  转换成点(相交)  point('((-1,0),(1,0))'::lseg,'((-2,-2),(2,2))'::lseg) 
point(polygon)  point  多边形中心 point('((0,0),(1,1),(2,0))'::polygon) 
polygon(box)  polygon  转换成12点的多边形 polygon('((0,0),(1,1))'::box) 
polygon(circle)  polygon  转换成12点的多边形  polygon('((0,0),2.0)'::circle) 
polygon(npts,circle)  polygon  转换成npts点的多边形  polygon(12,'((0,0),2.0)'::circle) 
polygon(path)  polygon  转换成多边形 polygon('((0,0),(1,1),(2,0))'::path) 

表 5-14. 几何升级函数
 
函数 返回 描述 例子
isoldpath(path)  path  测试是否v6.1前的路径 isoldpath('(1,3,0,0,1,1,2,0)'::path) 
revertpoly(polygon)  polygon  转换v6.1前的多边形 revertpoly('((0,0),(1,1),(2,0))'::polygon) 
upgradepath(path)  path  转换v6.1前的路径 upgradepath('(1,3,0,0,1,1,2,0)'::path) 
upgradepoly(polygon)  polygon  转换v6.1前的多边形 upgradepoly('(0,1,2,0,1,0)'::polygon) 


上一页 首页 下一页
格式化函数 开头 IP V4 函数