﻿{"id":1918,"date":"2015-06-22T08:21:22","date_gmt":"2015-06-22T06:21:22","guid":{"rendered":"http:\/\/www.sigterritoires.fr\/?p=1918"},"modified":"2023-05-05T06:52:37","modified_gmt":"2023-05-05T04:52:37","slug":"les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis","status":"publish","type":"post","link":"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/","title":{"rendered":"Les outils SIG de validation des g\u00e9om\u00e9tries(2) : Spatialite et PostGis"},"content":{"rendered":"<p>Dans l&rsquo;article pr\u00e9c\u00e9dent (<a href=\"http:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries-1\/\">Les outils SIG de validation de g\u00e9om\u00e9tries (1)<\/a>) nous avons trait\u00e9 la couche des communes italiennes (com2011.shp) avec le v\u00e9rificateur de g\u00e9om\u00e9tries d&rsquo;ArcMap. Nous n&rsquo;avons d\u00e9tect\u00e9 aucune anomalie.<\/p>\n<p>Maintenant, chargeons cette couche dans une base Spatialite et voyons ce que nous trouvons. Comme il a \u00e9t\u00e9 indiqu\u00e9 pr\u00e9c\u00e9demment, ceci est valable pour une base <a href=\"https:\/\/www.sigterritoires.fr\/index.php\/debuter-avec-postgrespostgis\/\">PostGis<\/a>, les requ\u00eates sql utilis\u00e9es \u00e9tant rigoureusement les m\u00eames.<\/p>\n<p><!--more--><\/p>\n<h2>Validation des g\u00e9om\u00e9tries dans Spatialite et PostGis<\/h2>\n<p>Vous trouverez le peu de r\u00e9f\u00e9rences \u00e0 la validation des g\u00e9om\u00e9tries dans Spatialite sur cette page: . En ce qui concerne PostGis il y en a un tout petit peu plus, \u00e0 la page <a href=\"http:\/\/postgis.net\/docs\/using_postgis_dbmanagement.html#OGC_Validity\">http:\/\/postgis.net\/docs\/using_postgis_dbmanagement.html#OGC_Validity<\/a><\/p>\n<p>GEOS (et donc SpatiaLite) prend en charge la fonction SQL ST_IsValid(). En appelant cette fonction, vous pouvez facilement identifier toutes les g\u00e9om\u00e9tries incrimin\u00e9es contenues dans vos tables. Mais cette fonction ne permet pas de r\u00e9soudre les probl\u00e8mes.<br \/>\nSpatiaLite prenait en charge, dans les versions pr\u00e9c\u00e9dentes, une fonction SQL ST_SanitizeGeometry(). Mais cette fonction permettait de traiter un petit nombre d&rsquo;anomalies.<br \/>\nMaintenant, gr\u00e2ce \u00e0 l&rsquo;int\u00e9gration de la biblioth\u00e8que <em><strong>liblwgeom<\/strong><\/em>, SpatiaLite peut prendre en charge la fonction ST_MakeValid(), identique \u00e0 celle prise en charge par PostGIS.<\/p>\n<p>Pour notre exemple, nous avons cr\u00e9\u00e9e une base spatialite vide, charg\u00e9 la couche com2011.shp et d\u00e9fini le champ g\u00e9om\u00e9trie. Si vous avez besoin d&rsquo;aide pour le faire, r\u00e9f\u00e9rez vous \u00e0 cet article :\u00a0<a href=\"http:\/\/www.sigterritoires.fr\/index.php\/creer-une-base-de-donnees-spatialite-avec-qgis-2-8\/\">La cr\u00e9ation d\u2019une base de donn\u00e9es spatiale Spatialite<\/a> pour le faire avec QGis ou \u00e0 cet article <a href=\"http:\/\/www.sigterritoires.fr\/index.php\/arcgisqgis-comment-partager-les-donnees\/\">Partager les donn\u00e9es entre ArcGis et QGis<\/a> pour le faire avec ArcGis.<\/p>\n<p>Pour la suite de l&rsquo;exemple, nous allons d&rsquo;abord utiliser QGis pour ex\u00e9cuter les requ\u00eates SQL sur la base Spatialite, puis on montrera comment faire avec ArcMap.<\/p>\n<h2>D\u00e9tection des anomalies de g\u00e9om\u00e9trie avec QGis<\/h2>\n<p>La premi\u00e8re requ\u00eate SQL \u00e0 ex\u00e9cuter est celle qui permet de v\u00e9rifier et d\u00e9tecter les anomalies de g\u00e9om\u00e9trie. La fonction ST_IsValid effectue cette d\u00e9tection.<\/p>\n<p><em><strong>SELECT Count(*)<\/strong><\/em><br \/>\n<em><strong> FROM com2011<\/strong><\/em><br \/>\n<em><strong> WHERE ST_IsValid(geometry) = 0;<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1930\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im4\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png?fit=760%2C563&amp;ssl=1\" data-orig-size=\"760,563\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im4\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png?fit=630%2C467&amp;ssl=1\" class=\"aligncenter size-large wp-image-1930\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4-630x467.png?resize=630%2C467\" alt=\"im4\" width=\"630\" height=\"467\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png?resize=630%2C467&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png?resize=300%2C222&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im4.png?w=760&amp;ssl=1 760w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Vous constaterez que 19 communes pr\u00e9sentent des anomalies.<\/p>\n<p>Pour savoir quelles communes sont concern\u00e9es, il suffit d&rsquo;ex\u00e9cuter la requ\u00eate:<\/p>\n<p><em><strong>SELECT nome_com<\/strong><\/em><br \/>\n<em><strong> FROM com2011<\/strong><\/em><br \/>\n<em><strong> WHERE ST_IsValid(geom) = 0;<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1931\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im5\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png?fit=766%2C567&amp;ssl=1\" data-orig-size=\"766,567\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im5\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png?fit=630%2C466&amp;ssl=1\" class=\"aligncenter size-large wp-image-1931\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5-630x466.png?resize=630%2C466\" alt=\"im5\" width=\"630\" height=\"466\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png?resize=630%2C466&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png?resize=300%2C222&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im5.png?w=766&amp;ssl=1 766w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a>Les requ\u00eates SQL ne sont pas tr\u00e8s loquaces. Si vous voulez savoir quelle est l&rsquo;erreur d\u00e9tect\u00e9e, vous devez la chercher dans votre <a href=\"https:\/\/www.sigterritoires.fr\/\">SIG<\/a>.<\/p>\n<p>La premi\u00e8re erreur concerne la commune de Sannicandro di Bari.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1937\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im6\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png?fit=1187%2C535&amp;ssl=1\" data-orig-size=\"1187,535\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im6\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png?fit=630%2C284&amp;ssl=1\" class=\"aligncenter size-large wp-image-1937\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6-630x284.png?resize=630%2C284\" alt=\"commune de sannicandro avec une anomalie\" width=\"630\" height=\"284\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png?resize=630%2C284&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png?resize=300%2C135&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im6.png?w=1187&amp;ssl=1 1187w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>L&rsquo;anomalie est \u00ab\u00a0visible\u00a0\u00bb. Le polygone de cette commune contient un autre polygone inclus. Le plus probable est que le sens des deux polygones ne soient pas contraires.<\/p>\n<p>Pour la commune de Trieste, la suivante, il est plus difficile \u00e0 trouver \u00e0 premi\u00e8re vue.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1938\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im7a\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png?fit=895%2C529&amp;ssl=1\" data-orig-size=\"895,529\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im7a\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png?fit=630%2C372&amp;ssl=1\" class=\"aligncenter size-large wp-image-1938\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a-630x372.png?resize=630%2C372\" alt=\"nomalie de la commune de Trieste\" width=\"630\" height=\"372\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png?resize=630%2C372&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png?resize=300%2C177&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im7a.png?w=895&amp;ssl=1 895w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Ici aussi, on retrouve un polygone int\u00e9rieur. Au lieu d&rsquo;\u00eatre constitu\u00e9 par deux polygones, un pour l&rsquo;anneau ext\u00e9rieur et un autre pour l&rsquo;anneau int\u00e9rieur, il a \u00e9t\u00e9 construit avec un seul anneau. Ceci est possible car le bord du polygone int\u00e9rieur est constitu\u00e9 par un seul point.<\/p>\n<h2>D\u00e9tection des anomalies avec ArcMap<\/h2>\n<p>Dans QGis vous avez une fen\u00eatre SQL pour ex\u00e9cuter les requ\u00eates, disponible dans le panneau Gestionnaire des bases de donn\u00e9es.<\/p>\n<p>Dans ArcMap, rien de tel. Donc \u00e0 premi\u00e8re vue vous ne pouvez pas ex\u00e9cuter des requ\u00eates SQL sur la base Spatialite.<\/p>\n<p>Rappelons que vous chargez une couche Spatialite directement dans ArcMap, sans passer par aucune connexion \u00e0 des bases de donn\u00e9es.<\/p>\n<p>Mais si on r\u00e9fl\u00eachit bien, les requ\u00eates sur attribut qu&rsquo;on fait avec ArcMap sont en r\u00e9alit\u00e9 des requ\u00eates SQL. M\u00eame si ce n&rsquo;est pas document\u00e9, vous pouvez ex\u00e9cuter la requ\u00eate ST_IsValid() tout simplement \u00e0 partir d&rsquo;un fen\u00eatre de <em><strong>S\u00e9lection par Attributs<\/strong><\/em>!<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1958\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/a1\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png?fit=1223%2C515&amp;ssl=1\" data-orig-size=\"1223,515\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"a1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png?fit=630%2C265&amp;ssl=1\" class=\"aligncenter size-large wp-image-1958\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1-630x265.png?resize=630%2C265\" alt=\"requ\u00eate st-isvalid avec s\u00e9lection par attributs dans arcmap\" width=\"630\" height=\"265\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png?resize=630%2C265&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png?resize=300%2C126&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/a1.png?w=1223&amp;ssl=1 1223w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Vous remarquerez le r\u00e9sultat de la requ\u00eate : les 19 communes avec des anomalies, les m\u00eames que celles que nous avons trouv\u00e9 avec QGis.<\/p>\n<h2>Correction automatique des erreurs<\/h2>\n<p>Tout d&rsquo;abord, mettons les choses au point. La correction automatique, \u00e9tant automatique, ne fait pas intervenir l&rsquo;op\u00e9rateur humain. La solution qui sera appliqu\u00e9e n&rsquo;est pas forc\u00e9ment la bonne, mais c&rsquo;en est une qui rendra la g\u00e9om\u00e9trie valide.<\/p>\n<p>Dans le cas de la commune de Trieste, il est \u00e9vident qu&rsquo;au moment de la num\u00e9risation du fond du bras de mer, l&rsquo;op\u00e9rateur \u00e0 mis deux points trop proches qui ont fusionn\u00e9, fermant le dernier petit bout du bras de mer. La solution correcte serait de dupliquer le point en question et de s\u00e9parer ces deux points, de mani\u00e8re qu&rsquo;il n&rsquo;y ait pas de polygone int\u00e9rieur. Mais ceci ne peut pas \u00eatre d\u00e9termin\u00e9 par une correction automatique.<\/p>\n<p>Ce que la correction automatique fera sera de respecter les placement des points existants. Il dupliquera le point en question en affectant un au polygone ext\u00e9rieur, l&rsquo;autre au polygone int\u00e9rieur. Puis il inversera l&rsquo;ordre des points int\u00e9rieur pour qu&rsquo;ils respectent la r\u00e8gle qui dit que le sens des polygones int\u00e9rieurs doit \u00eatre anti-horaire (Le sens des anneaux ext\u00e9rieur \u00e9tant horaire).<\/p>\n<p>En appliquant cette solution, si on ne s&rsquo;approche pas de la r\u00e9alit\u00e9 du terrain, au moins la g\u00e9om\u00e9trie respectera les r\u00e8gles et ne sera plus consid\u00e9r\u00e9e comme erron\u00e9e.<\/p>\n<p>Pour corriger les g\u00e9om\u00e9tries vous disposez d&rsquo;une requ\u00eate SQL utilisant la fonction <b>ST_MakeValid()<\/b> :<\/p>\n<p><b>UPDATE com2011 SET geom = ST_MakeValid(geom)<br \/>\nWHERE ST_IsValid(geom) = 0;<\/b><\/p>\n<p>Mais selon le logiciel utilis\u00e9, cette fonction est impl\u00e9ment\u00e9e ou pas.<\/p>\n<p>Avec ArcMap, le SQL est limit\u00e9 \u00e0 des clauses SELECT. Comme nous voulons faire un UPDATE, ceci n&rsquo;est pas possible dans les fen\u00eatres de S\u00e9lection par attributs.<\/p>\n<p>Sous QGis elle ne l&rsquo;est pas directement dans le gestionnaire de bases de donn\u00e9s Spatialite. Vous devez passer par un plugin : \u00ab\u00a0Processing LWGEOM provider\u00a0\u00bb.\u00a0 Une fois install\u00e9, vous pouvez disposer de lwgeom comme fournisseur d&rsquo;algorithmes dans la Bo\u00eete \u00e0 Outils de traitements.<\/p>\n<p>Petit, ou plut\u00f4t grand, hic : Pas moyen dans la version 2.8 de corriger la table existante. Vous \u00eates oblig\u00e9 de cr\u00e9er une nouvelle couche&#8230; de type shape. M\u00eame si vous s\u00e9lectionnez le format spatialite comme sortie, c&rsquo;est bugg\u00e9 et vous avez un shape.<\/p>\n<p>En attendant que ce soit corrig\u00e9, de toutes fa\u00e7ons ce que l&rsquo;on cherche c&rsquo;est \u00e0 corriger une table existante. Voici le plus simple, m\u00eame s&rsquo;il doit y avoir d&rsquo;autres solutions.<\/p>\n<p>T\u00e9l\u00e9chargez l&rsquo;ex\u00e9cutable spatialite_gui. Celui-ci est fourni par le projet qui d\u00e9veloppe Spatialite et poss\u00e8de donc toutes les impl\u00e9mentations n\u00e9cessaires, \u00e0 jour. Il n&rsquo;a pas besoin d&rsquo;installation, vous t\u00e9l\u00e9chargez et ex\u00e9cutez le fichier .exe en double-cliquant.<\/p>\n<p>L&rsquo;adresse de t\u00e9l\u00e9chargement est  et le fichier \u00e0 t\u00e9l\u00e9charger c&rsquo;est celui qui commence par <em><strong>spatialite_gui_<\/strong><\/em>&#8230;<\/p>\n<p>Actuellement, vous pouvez le t\u00e9l\u00e9charger en cliquant ici directement: spatialite_gui-1.8.0-devel-win-x86.7z<\/p>\n<p>Si nous ex\u00e9cutons la requ\u00eate SQL de v\u00e9rification de la g\u00e9om\u00e9trie, nous voyons le m\u00eame r\u00e9sultat que pr\u00e9c\u00e9demment:<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1940\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im20\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png?fit=643%2C477&amp;ssl=1\" data-orig-size=\"643,477\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im20\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png?fit=630%2C467&amp;ssl=1\" class=\"aligncenter size-large wp-image-1940\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20-630x467.png?resize=630%2C467\" alt=\"spatialite gui test de validit\u00e9\" width=\"630\" height=\"467\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png?resize=630%2C467&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png?resize=300%2C223&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im20.png?w=643&amp;ssl=1 643w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a>Nous ex\u00e9cutons maintenant la requ\u00eate de corrections de la g\u00e9om\u00e9trie:<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1941\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im21\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png?fit=638%2C478&amp;ssl=1\" data-orig-size=\"638,478\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im21\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png?fit=630%2C472&amp;ssl=1\" class=\"aligncenter size-large wp-image-1941\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21-630x472.png?resize=630%2C472\" alt=\"atialite gui make valid\" width=\"630\" height=\"472\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png?resize=630%2C472&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im21.png?w=638&amp;ssl=1 638w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a>Finalement, nous r\u00e9-ex\u00e9cutons la requ\u00eate de validation de la g\u00e9om\u00e9trie:<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1942\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/les-outils-sig-de-validation-des-geometries2-spatialite-et-postgis\/im22\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"im22\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png?fit=630%2C473&amp;ssl=1\" class=\"aligncenter size-large wp-image-1942\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22-630x473.png?resize=630%2C473\" alt=\"resultat de la correction\" width=\"630\" height=\"473\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png?resize=630%2C473&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/im22.png?w=640&amp;ssl=1 640w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a>Les 19 g\u00e9om\u00e9tries contenant des anomalies ont \u00e9t\u00e9 corrig\u00e9es.<\/p>\n<p>Dans le prochain article on verra comment faire la m\u00eame chose que pour une base Spatialite, mais cette fois-ci avec n&rsquo;importe quel format SIG. Pour cela nous utiliserons le logiciel FME de Safe Software.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans l&rsquo;article pr\u00e9c\u00e9dent (Les outils SIG de validation de g\u00e9om\u00e9tries (1)) nous avons trait\u00e9 la couche des communes italiennes (com2011.shp) avec le v\u00e9rificateur de g\u00e9om\u00e9tries d&rsquo;ArcMap. Nous n&rsquo;avons d\u00e9tect\u00e9 aucune anomalie. Maintenant, chargeons cette couche dans&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"give_campaign_id":0,"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"sfsi_plus_gutenberg_text_before_share":"","sfsi_plus_gutenberg_show_text_before_share":"","sfsi_plus_gutenberg_icon_type":"","sfsi_plus_gutenberg_icon_alignemt":"","sfsi_plus_gutenburg_max_per_row":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[145,209,146,152],"tags":[233,15,65,44,232,227,58,199,231],"class_list":["post-1918","post","type-post","status-publish","format-standard","hentry","category-arcgis","category-arcgisqgis","category-arcmap","category-outils_divers","tag-anomalies","tag-arcgis","tag-arcmap","tag-geodatabase","tag-geometrie","tag-postgis","tag-qgis","tag-spatialite","tag-validation"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p6XU0A-uW","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/1918","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/comments?post=1918"}],"version-history":[{"count":0,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/1918\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/media?parent=1918"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/categories?post=1918"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/tags?post=1918"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}