<div dir="ltr"><div><div><div><div><div>Just to answer about Grass.<br>I'm not a Grass user, and I do use PostGIS topology every day (heart of my work)<br>i know only 3 commands :<br>v.in.ogr dsn="PG:host=localhost port=5433 dbname=... user=... password=..." layer=schema.table out=layer_name<br>v.clean ...<br>v.out.postgis -l -2 input=layer_name dsn="PG:host=localhost dbname=... port=5433 user=... password=..." olayer=my_postgis_topo_layer -t<br><br></div>From a practical standpoint, <br>I like to choose the best tool for each job !<br><br>the focus of PostGIS topology is to <b>store </b>a topology model very close the standart and allow <b>easy conversion</b> to geometry.<br></div>It is not a tool designed to clean an input topology, nor merge, batch change, etc. Similarly, it is very slow to compute the topology from geometry. </div><div><br></div>On the opposite Grass is the only GIS entirely topological since the beginning. This means that they have powerfull and honed topological capabilities, because topology is not an option in this soft.<br></div><div>However it is not a tool designed to get easy access to data like postgis topology.<br></div><div><br></div>I prefer to chose the best tool for each job !<br></div><div>advanced topo computing/cleaning/batch operations : Grass<br></div><div>topo storing/relational usage/conversion to geom : PostGis topology.<br></div><div><br>Clean correct topological operations with a given precision is something incredibly difficult, so don't ask too much to PostGIS topology.<br><br>Cheers,<br></div>Rémi-C<br><div><div><div><div><div><div><div><div><br></div></div></div></div></div></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2014-11-06 0:37 GMT+01:00 Guillaume Drolet <span dir="ltr"><<a href="mailto:droletguillaume@gmail.com" target="_blank">droletguillaume@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Sandro,<br>
<br>
Using your help, I filled most holes but three I couldn't fill using the<br>
"UPDATE ... SET topogeom ..." approach. Will explore other approaches later.<br>
<br>
Re the presence of holes, I may have deleted faces when running my function<br>
for removing extra nodes. This needs checking.<br>
<br>
Advancing in my work, I also got to drop edge 6341 and I end up with this:<br>
<br>
<a href="https://dl.dropboxusercontent.com/u/5196336/edge6340.bmp" target="_blank">https://dl.dropboxusercontent.com/u/5196336/edge6340.bmp</a><br>
<br>
So the next step is to split edge 6340 about its middle, with the goal of<br>
then connecting the newly created node with node 4753, thus creating an edge<br>
where there should be one (i.e. on the light grey line).<br>
<br>
However, I get the error: *point not on edge* when running ST_ModEdgeSplit.<br>
First, I tried to find the new node location using the coordinate capture<br>
tool in QGIS but because I got that error I thought maybe I really need to<br>
find a point that's on the edge so I used this approach:<br>
<br>
/WITH edge AS (SELECT geom line<br>
              FROM de_20k_topo.edge_data<br>
              WHERE edge_id = 6340<br>
), point AS (SELECT e.line, ST_ClosestPoint(e.line,<br>
                    ST_GeomFromText('POINT(-208737.346 811681.163)', 32198)) point<br>
             FROM edge e<br>
)<br>
SELECT ST_ModEdgeSplit('de_20k_topo', 6340, point)<br>
FROM point;<br>
<br>
/<br>
<br>
I still get the same error: point not on node.<br>
<br>
How is one supposed to find a point that IS on an edge?<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://postgis.17.x6.nabble.com/Topology-cannot-delete-slivers-or-gaps-tp5007250p5007281.html" target="_blank">http://postgis.17.x6.nabble.com/Topology-cannot-delete-slivers-or-gaps-tp5007250p5007281.html</a><br>
<span class="im HOEnZb">Sent from the PostGIS - User mailing list archive at Nabble.com.<br>
</span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
</div></div></blockquote></div><br></div>