8.7. Types g�om�triques

Les types de donn�es g�om�triques repr�sentent des objets � deux dimensions. Tableau 8-16 liste les types disponibles dans PostgreSQL. Le type le plus fondamental, le point, forme la base pour tous les autres types.

Tableau 8-16. Types g�om�triques

NomTaille de stockageRepr�sentationDescription
point16 octetsPoint du plan(x,y)
line32 octetsLigne infinie (pas enti�rement impl�ment�)((x1,y1),(x2,y2))
lseg32 octetsSegment de droite fini((x1,y1),(x2,y2))
box32 octetsBoite rectangulaire((x1,y1),(x2,y2))
path16+16n octetsChemin ferm� (similaire � un polygone)((x1,y1),...)
path16+16n octetsChemin ouvert[(x1,y1),...]
polygon40+16n octetsPolygone (similaire � un chemin ferm�)((x1,y1),...)
circle24 octetsCercle<(x,y),r> (centre et rayon)

Un large ensemble de fonctions et d'op�rateurs permettent d'effectuer diff�rentes op�rations g�om�triques, comme l'agrandissement, la translation, la rotation, la d�termination des intersections. Elles sont expliqu�es dans Section 9.10.

8.7.1. Points

Les points sont les blocs fondamentaux pour construire les types g�om�triques. Les valeurs de type point sont sp�cifi�es en utilisant la syntaxe suivante:

( x , y )
  x , y

o� x et y sont les coordonn�es respectives sous forme de nombre � virgule flottante.

8.7.2. Segments de droites

Les segments de droites (lseg) sont repr�sent�s sous forme paires de points, en utilisant la syntaxe suivante:

( ( x1 , y1 ) , ( x2 , y2 ) )
  ( x1 , y1 ) , ( x2 , y2 )  
    x1 , y1   ,   x2 , y2

o� (x1,y1) et (x2,y2) sont les points extr�mit�s du segment.

8.7.3. Boxes

Les boites (rectangles) sont repr�sent�es par paires de points qui sont les coins oppos�s de la boite, en utilisant la syntaxe suivante:

( ( x1 , y1 ) , ( x2 , y2 ) )
  ( x1 , y1 ) , ( x2 , y2 )  
    x1 , y1   ,   x2 , y2

o� (x1,y1) et (x2,y2) sont les coins oppos�s du rectangle.

Les rectangles sont affich�s en utilisant la premi�re syntaxe. Les coins sont r�ordonn�es lors de la saisie. Le coin en haut � gauche, puis le coin en bas � droite. Les autres coins peuvent �tre saisis, mais les coins en bas � gauche et en haut � droite sont d�termin�s � partir de l'entr�e et stock�s.

8.7.4. Chemins

Les chemins ( type path ) sont repr�sent�s par des listes de points connect�s. Les chemins peuvent �tre ouverts, si le premier et le dernier point ne sont pas consid�r�s comme connect�s, ou ferm�s, si le premier et le dernier point sont consid�r�s connect�s.

Les valeurs de type path sont entr�es avec la syntaxe suivante.

( ( x1 , y1 ) , ... , ( xn , yn ) )
[ ( x1 , y1 ) , ... , ( xn , yn ) ]
  ( x1 , y1 ) , ... , ( xn , yn )  
  ( x1 , y1   , ... ,   xn , yn )  
    x1 , y1   , ... ,   xn , yn    

o� les points sont les extr�mit�s des segments de droites qui forment le chemin. Les crochets ([]) indiquent un chemin ouvert, alors que les parenth�ses (()) indiquent un chemin ferm�.

Les chemins sont affich�s avec la premi�re syntaxe.

8.7.5. Polygones

Les polygones ( type polygon) sont repr�sent�s par des ensembles de points (les vertex du polygone). Ils devraient probablement �tre consid�r�s comme des chemins ferm�s, mais ils sont stock�s diff�remment et ont leurs propres routines de manipulation.

Les valeurs de type polygon sont saisies avec la syntaxe suivante:

( ( x1 , y1 ) , ... , ( xn , yn ) )
  ( x1 , y1 ) , ... , ( xn , yn )  
  ( x1 , y1   , ... ,   xn , yn )  
    x1 , y1   , ... ,   xn , yn    

o� les points sont les extr�mit�s des segments de droites qui forment les limites du polygone.

Les polygones sont affich�s en utilisant la premi�re syntaxe.

8.7.6. Cercles

Les cercles (type circle) sont repr�sent�s par le point central et le rayon. Les valeurs de type circle sont saisies avec la syntaxe suivante:

< ( x , y ) , r >
( ( x , y ) , r )
  ( x , y ) , r  
    x , y   , r  

o� (x,y) est le centre et r est le rayon du cercle.

Les cercles sont affich�s en utilisant la premi�re syntaxe.