PostGIS
PostGIS ajoute le support d'objets géographiques à la base de données PostgreSQL sous forme de géométries (points, lignes, polygones), conformément aux standards établis par l'Open Geospatial Consortium (OGC).
Il utilise de nombreuses bibliothèques du monde libre et en particulier gdal pour le raster, ogr pour le vecteur, proj.4 pour la gestion des projections et geos pour la géométrie.
PostGIS comporte beaucoup de fonctions :
Fonctions de gestion (Postgis_version(), Postgis_geos_version(), Postgis_gdal_version(), ...)
Fonctions de mesure (st_perimeter(geometry) , st_distance(geometry,geometry), ...)
Fonctions d'extraction d'informations géométriques (st_astext(1) , st_assvg(1, integer, integer), st_asewkt(1) ...)
Fonctions de constructeurs géométriques (st_centroid(geometry) , st_pointonsurface(geometry), ...)
Fonctions d'éditeur géométriques
...
Quelques types de données géométriques de type vecteurs :
Elements | stockage PostGIS |
ponctuels | POINT (44 798) |
linéaires | LINESTRING(40 798, 72 808, 87 797, 122 812) |
surfaciques | POLYGON((40 798, 72 808, 87 797, 122 812, 70 798)) |
ponctuels composés | MULTIPOINT(77 798, ...) |
linéaires composés | MULTILINESTRING((40 798, 72 808, 87 797, 122 812),...) |
Surfaciques composés | MULTIPOLYGON((40 798, 72 808, 87 797, 122 812, 70 798),...) |
... |
Dans PostGIS les projections sont stockées dans la table spatial_ref_sys qui est une table standard de l'OGC.
Depuis la version 2.0 PostGIS gère également les données rasters.
Il permet d'utiliser des fonctions d'overlay (telles que ST_Intersects ou ST_Within) d'une manière transparente sans que l'utilisateur n'ait à se soucier si les couches en entrée sont en format vectoriel ou en format matriciel.
Les couches raster sont chargées en tant que données WKT (Well Know Text).
raster2pgsql est le pendant de shp2pgsql pour les données vecteurs de type SHP.
Nous n'aborderons pas plus le sujet du raster dans PostGIS. Le cas échéant on pourra consulter la formation PostGIS sur Sigea.