[postgis-users] Using PostGIS topology to clean-up network prior to routing

Sandro Santilli strk at keybit.net
Thu Jul 3 06:19:30 PDT 2014


On Thu, Jul 03, 2014 at 09:24:05AM -0300, Adrien ANDRÉ wrote:

> But for some linestrings, the toTopoGeom function [2] outputs errors.
> Here is a list with counts:
> 
>  458 lwpoly_from_lwlines: shell must be closed
>   41 faces mismatch: invalid topology ?
>   30 SQL/MM Spatial exception - geometry crosses edge
>    8 query string argument of EXECUTE is null
> 
> So the "shell must be closed" is the main one.
> 
> All linestrings are valid (ST_IsValid says).
> 
> Would you know why this happens?
> How may i debug this?

First of all you should make sure to be running the latest development
version of PostGIS Topology, then you would need to reduce the dataset
as much as possibly without loosing the "lwpoly_from_lwlines" error.

The "shell must be closed" error should not come out anymore during
toTopoGeom as recent versions. It comes from an failed attempt to convert
a polygon to GEOS format, for some topological operation. We should not
be doing that since we moved to the edge-walking algorithm:
http://strk.keybit.net/blog/2012/01/28/a-walk-on-the-wild-side/

--strk;


More information about the postgis-users mailing list