Prendre la geomA et la geomB et retourner : “Dimensionally Extended 9 Intersection Model (DE-9IM)” selon section 4.3.6 de la doc postgis
SELECT ST_Relate('SRID=21781;POINT(538494 152932)'::geometry,'SRID=21781;POINT(538494 152932)'::geometry) --"0FF-FFF-FF2"
--deux points diffrents
SELECT ST_Relate('SRID=21781;POINT(538494 152932)'::geometry,'SRID=21781;POINT(538492 152932)'::geometry) --"FF0-FFF-0F2"
--deux lignes identiques
SELECT ST_Relate('SRID=21781;LINESTRING(53 15, 55 16)'::geometry,'SRID=21781;LINESTRING(53 15, 55 16)'::geometry) --"1FF-F0F-FF2"
--deux lignes partiellment identiques
SELECT ST_Relate('SRID=21781;LINESTRING(53 15, 55 16)'::geometry,'SRID=21781;LINESTRING(53 15, 55 16, 58 18)'::geometry) --""1FF-00F-102"
--deux lignes qui se coupe perpendiculaire
SELECT ST_Relate('SRID=21781;LINESTRING(0 0, 10 0)'::geometry,'SRID=21781;LINESTRING(5 5, 5 -5)'::geometry) --"0F1-FF0-102"
--deux carre qui sont identiques
SELECT ST_Relate('SRID=21781;POLYGON((0 0,1 0,1 1,0 1,0 0))'::geometry,'SRID=21781;POLYGON((0 0,1 0,1 1,0 1,0 0))'::geometry) --"2FF-F1F-FF2"
--deux carre qui se touchent pas du tout
SELECT ST_Relate('SRID=21781;POLYGON((0 0,1 0,1 1,0 1,0 0))'::geometry,'SRID=21781;POLYGON((2 0,3 0,3 2,2 2,2 0))'::geometry) --""FF2-FF1-212"
--deux carre qui se touchent 
SELECT ST_Relate('SRID=21781;POLYGON((0 0,1 0,1 1,0 1,0 0))'::geometry,'SRID=21781;POLYGON((0.5 0,1.5 0,1.5 1.0,0.5 1.0,0.5 0))'::geometry) --"212-111-212"

Commentaires

Posts les plus consultés de ce blog

Comment extraire les fichiers disques en raw d'un backup proxmox vma

Utiliser curl pour récupérer des logs sur un serveur Microsoft IIS avec l'authentification ntlm

Find the lists of disks of your Proxmox VM stored in a ceph cluster