[postgis-devel] [PostGIS] #246: Platform differences when performing a union
PostGIS
trac at osgeo.org
Mon Sep 14 05:38:12 PDT 2009
#246: Platform differences when performing a union
-------------------------+--------------------------------------------------
Reporter: lighthousej | Owner: pramsey
Type: defect | Status: new
Priority: medium | Milestone: postgis 1.5.0
Component: postgis | Version: 1.4.X
Keywords: |
-------------------------+--------------------------------------------------
Attached are two psql sessions, one on a WinXP Pro SP3 machine, another to
Ubuntu Hardy 8.04. (one pair of files have unix line endings, another has
DOS line endings, for your convenience).
There are 18 polygons in the data set and I want to make a union out of
them. The union works in Linux but fails with an exception in Windows.
I received an error on the Windows box (TopologyException: found non-noded
intersection ...), then brought the data over to the linux box for
analysis,
and curiously the operation worked.
If you visualize it, I think the last polygon (#18) shares a common line
segment in space with another (possibly #15), but breaks where #18 has a
vertex on the line of #15.
However there are at least 2 polygons that cover the same point in space
so
the point shouldn't even be a problem because it's not on the outside of
the
resulting shape.
I'm sure my analysis is lacking, but wanted to communicate all I found
out.
Using an alternate strategy of linework does get the union shape though.
Diagnostic information on Windows:
postgres=# select postgis_full_version();
postgis_full_version
-------------------------------------------------------------------------------------
POSTGIS="1.4.0" GEOS="3.1.1-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August 2008"
USE_STATS
(1 row)
postgres=# select version();
version
-------------------------------------------------------------
PostgreSQL 8.4.0, compiled by Visual C++ build 1400, 32-bit
(1 row)
For Linux:
postgres=# select postgis_full_version();
postgis_full_version
-------------------------------------------------------------------------------------
POSTGIS="1.4.0" GEOS="3.1.1-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August 2008"
USE_STATS
(1 row)
postgres=# select version();
version
------------------------------------------------------------------------------------------------------------
PostgreSQL 8.4.0 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.4.6
20060404 (Red Hat 3.4.6-10), 32-bit
(1 row)
Both were installed via binary setup programs.
--
Ticket URL: <http://trac.osgeo.org/postgis/ticket/246>
PostGIS <http://trac.osgeo.org/postgis/>
PostGIS
More information about the postgis-devel
mailing list