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

几何函数

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

表 5-11. 几何函数

函数 返回 描述 例子
area(box)  float8  长方形范围 area('((0,0),(1,1))'::box) 
area(circle)  float8  圆的范围  area('((0,0),2.0)'::circle) 
box(box,box)  box  boxes to intersection box  box('((0,0),(1,1))','((0.5,0.5),(2,2))') 
center(box)  point  对象中心  center('((0,0),(1,2))'::box) 
center(circle)  point  对象中心  center('((0,0),2.0)'::circle) 
diameter(circle)  float8  圆直径 diameter('((0,0),2.0)'::circle) 
height(box)  float8  长方形高 height('((0,0),(1,1))'::box) 
isclosed(path)  bool  如果是闭合路径为真 isclosed('((0,0),(1,1),(2,0))'::path) 
isopen(path)  bool  如果是开环路径为真 isopen('[(0,0),(1,1),(2,0)]'::path) 
length(lseg)  float8  线段长度 length('((-1,0),(1,0))'::lseg) 
length(path)  float8  路径长度  length('((0,0),(1,1),(2,0))'::path) 
pclose(path)  path  将路径转换为闭合  pclose('[(0,0),(1,1),(2,0)]'::path) 
point(lseg,lseg)  point  转换成点 (相交)  point('((-1,0),(1,0))'::lseg,'((-2,-2),(2,2))'::lseg) 
points(path)  int4  路径中点数 points('[(0,0),(1,1),(2,0)]'::path) 
popen(path)  path  将路径转换为开环 popen('((0,0),(1,1),(2,0))'::path) 
radius(circle)  float8  圆半径 radius('((0,0),2.0)'::circle) 
width(box)  float8  长方形宽 width('((0,0),(1,1))'::box) 

表 5-12. 几何类型转换函数

函数 返回 描述 例子
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-13. 几何升级函数

函数 返回 描述 例子
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 函数