[postgis-users] GEOS pointonsurface() threw an error!

Ricardo Bayley ricardo.bayley at gmail.com
Tue Aug 17 22:02:55 PDT 2010


Hi Regina and Leo,

My version is: "POSTGIS="1.5.0" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21
August 2008" LIBXML="2.7.6" USE_STATS"
PostgreSQL 8.4 running on a WINXP

I was playing with the ST_IsValid() function and the ST_IsValidReason().

What I notice is the geometry, of course, is not valid.
Reason: "Self-intersection[-6.4825e+006 -3.15411e+006]"

I have other 96 invalid geometries in a table of 22k records.
>From those 96, only 1 has the Self-intersection invalid reason.
The rest of them have a Ring Self-intersection. These last dont through an
error exception, only the one with the "Self-intersection" error does.

I guess I should do propper geometry validation first.

Regards



On Wed, Aug 18, 2010 at 1:38 AM, Paragon Corporation <lr at pcorp.us> wrote:

>  Ricardo,
> If you are looking in PgAdmin III, it won't show the geometry if it is too
> big.
>
> You should verify that your multipolygon is valid.  Many of the GEOS
> functions won't work with invalid polygons.
>
> SELECT ST_IsValid(yourgeometryhere)
>
> Also let us know which version of GEOS you are using
>
> SELECT postgis_full_version();
>
> Lots of topology exception issues have been fixed in newer versions of GEOS
> so upgrading might fix your problem if you are running a GEOS version older
> than 3.2
>
> Hope that helps,
> Regina and Leo
> http://www.postgis.us
>
>  ------------------------------
> *From:* postgis-users-bounces at postgis.refractions.net [mailto:
> postgis-users-bounces at postgis.refractions.net] *On Behalf Of *Ricardo
> Bayley
> *Sent:* Wednesday, August 18, 2010 12:06 AM
> *To:* postgis-users at postgis.refractions.net
> *Subject:* [postgis-users] GEOS pointonsurface() threw an error!
>
> Hi,
>
> I am calculation the PointOnSurface for a table of polygons. I get this
> error message
>
>
>  NOTICE:  TopologyException: found non-noded intersection between
> LINESTRING (857703 1.04022e+006, 857648 1.04019e+006) and LINESTRING (857536
> 1.04019e+006, 857870 1.04019e+006) at 857648 1.04019e+006
>
>
> ERROR:  GEOS pointonsurface() threw an error!
>
> ********** Error **********
>
> ERROR: GEOS pointonsurface() threw an error!
> Estado SQL:XX000
>
> I checked the one of the rows that is getting this error with
> ST_GeometryType and I get "ST_Multipolygon", although I dont get the
> ST_AsText, or any output type.
> Any ideas why ?
>
>
> regards
>
>
> Ricardo
>
>
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20100818/530bb914/attachment.html>


More information about the postgis-users mailing list