Funciones Geom�tricas

Los tipos geom�tricos point, box, lseg, line, path, polygon, and circle tienen un gran conjunto de funciones nativas soportadas.

Tabla 11. Funciones Geom�tricas

FuncionesRetornaDescripcionEjemplo
area(box) float8 �rea del rectangulo area('((0,0),(1,1))'::box)
area(circle) float8 �rea del circulo area('((0,0),2.0)'::circle)
box(box,box) box rectangulo de intersecci�n de rectangulos box('((0,0),(1,1))','((0.5,0.5),(2,2))')
center(box) point centro del objeto center('((0,0),(1,2))'::box)
center(circle) point centro del objeto center('((0,0),2.0)'::circle)
diameter(circle) float8 diametro del circulo diameter('((0,0),2.0)'::circle)
height(box) float8 tama�o vertical del rectangulo height('((0,0),(1,1))'::box)
isclosed(path) bool ruta cerrada ? isclosed('((0,0),(1,1),(2,0))'::path)
isopen(path) bool ruta abierta ? isopen('[(0,0),(1,1),(2,0)]'::path)
length(lseg) float8 longitud de la linea segmento length('((-1,0),(1,0))'::lseg)
length(path) float8 longitud de la ruta length('((0,0),(1,1),(2,0))'::path)
pclose(path) path convierte path a closed popen('[(0,0),(1,1),(2,0)]'::path)
point(lseg,lseg) point intersecci�n point('((-1,0),(1,0))'::lseg,'((-2,-2),(2,2))'::lseg)
points(path) int4 n�mero de puntos points('[(0,0),(1,1),(2,0)]'::path)
popen(path) path convierte path a open popen('((0,0),(1,1),(2,0))'::path)
radius(circle) float8 radio del c�rculo radius('((0,0),2.0)'::circle)
width(box) float8 tama�o horizontal width('((0,0),(1,1))'::box)

Tabla 12. Funciones de conversi�n de tipos Geom�tricos

FuncionesRetornaDescripcionEjemplo
box(circle) box convierte circulo a rectangulo box('((0,0),2.0)'::circle)
box(point,point) box convierte puntos a rectangulo box('(0,0)'::point,'(1,1)'::point)
box(polygon) box convierte poligono a rectangulo box('((0,0),(1,1),(2,0))'::polygon)
circle(box) circle convierte a circulo circle('((0,0),(1,1))'::box)
circle(point,float8) circle convierte a circulo circle('(0,0)'::point,2.0)
lseg(box) lseg convierte diagonal a lseg lseg('((-1,0),(1,0))'::box)
lseg(point,point) lseg convierte a lseg lseg('(-1,0)'::point,'(1,0)'::point)
path(polygon) point convierte a path path('((0,0),(1,1),(2,0))'::polygon)
point(circle) point convierte a punto (centro) point('((0,0),2.0)'::circle)
point(lseg,lseg) point convierte a punto (intersecci�n) point('((-1,0),(1,0))'::lseg, '((-2,-2),(2,2))'::lseg)
point(polygon) point centro de poligono point('((0,0),(1,1),(2,0))'::polygon)
polygon(box) polygon convierte a poligono con 12 puntos polygon('((0,0),(1,1))'::box)
polygon(circle) polygon convierte a poligono con 12 puntos polygon('((0,0),2.0)'::circle)
polygon(npts,circle) polygon convierte a poligono npts polygon(12,'((0,0),2.0)'::circle)
polygon(path) polygon convierte a polygon polygon('((0,0),(1,1),(2,0))'::path)

Tabla 13. Funciones de Actualizaci�n Geom�trica

FuncionesRetornaDescripcionEjemplo
isoldpath(path) path test path for pre-v6.1 form isoldpath('(1,3,0,0,1,1,2,0)'::path)
revertpoly(polygon) polygon convierte pre-v6.1 polygon revertpoly('((0,0),(1,1),(2,0))'::polygon)
upgradepath(path) path convierte pre-v6.1 path upgradepath('(1,3,0,0,1,1,2,0)'::path)
upgradepoly(polygon) polygon convierte pre-v6.1 polygon upgradepoly('(0,1,2,0,1,0)'::polygon)