[postgis-users] contains function with complex polygons
Emily Gouge
egouge at refractions.net
Wed Sep 27 13:29:20 PDT 2006
This may be a result of the polygon not being a valid PostGIS polygon. When I ran an isvalid() on
the polygon geometry it returned false with the notice "Holes are nested".
SELECT isvalid(geomfromtext('MULTIPOLYGON(...)'));
NOTICE: Holes are nested
isvalid
---------
f
(1 row)
Emily
Gilbert, Antoine wrote:
> Hi
>
>
>
> I have special case problem with the contains SQL function if I use
> polygons with "island in a hole"
>
>
>
> For example I have a polygon, with a lake in it (hole) and an island in
> the middle of the lake, all these as a whole polygon.
>
>
>
> I have a point location standing on the island.
>
>
>
> Why the contains SQL function contains(myPolygon,myPoint) dosen't return
> true for my point
>
>
>
> I verified my geometries using JUMP and everything seems ok
>
>
>
> Here is the point: POINT (-68.5167 63.7500)
>
>
>
> Here is my complex polygon (multipolygon in fact)
>
>
>
> MULTIPOLYGON(((-128.74153099999998 66.42965, -106.554262 32.849587,
> -130.846486 40.578899, -152.378198 61.006418999999994,
> -128.74153099999998 66.42965)),((-64.841883 75.565074, -48.866971
> 72.139282, -39.750806 62.662659999999995, -27.604758 32.297475999999996,
> -77.997723 27.889585999999998, -96.791707 62.14741, -64.841883
> 75.565074),(-57.793946999999996 70.71189, -64.841883 72.710258,
> -85.985179 63.860305999999994, -70.11599 56.037586999999995,
> -54.035098999999995 59.578098, -57.793946999999996 70.71189),(-41.407126
> 47.204051, -49.688469999999995 39.474706999999995, -34.781974
> 36.162130999999995, -41.407126 47.204051),(-65.311643 60.434546,
> -72.82933899999999 60.720017999999996, -76.11817099999999 65.28773,
> -71.419803 67.000626, -64.371867 68.428018, -61.552794999999996
> 64.431282, -65.311643 60.434546)))
>
>
>
> Formatted version:
>
>
>
> MULTIPOLYGON (((
>
> -128.74153099999998 66.42965,
>
> -106.554262 32.849587,
>
> -130.846486 40.578899,
>
> -152.378198 61.006418999999994,
>
> -128.74153099999998 66.42965
>
> )), ((
>
> -64.841883 75.565074,
>
> -48.866971 72.139282,
>
> -39.750806 62.662659999999995,
>
> -27.604758 32.297475999999996,
>
> -77.997723 27.889585999999998,
>
> -96.791707 62.14741,
>
> -64.841883 75.565074
>
> ), (
>
> -57.793946999999996 70.71189,
>
> -64.841883 72.710258,
>
> -85.985179 63.860305999999994,
>
> -70.11599 56.037586999999995,
>
> -54.035098999999995 59.578098,
>
> -57.793946999999996 70.71189
>
> ), (
>
> -41.407126 47.204051,
>
> -49.688469999999995 39.474706999999995,
>
> -34.781974 36.162130999999995,
>
> -41.407126 47.204051
>
> ), (
>
> -65.311643 60.434546,
>
> -72.82933899999999 60.720017999999996,
>
> -76.11817099999999 65.28773,
>
> -71.419803 67.000626,
>
> -64.371867 68.428018,
>
> -61.552794999999996 64.431282,
>
> -65.311643 60.434546
>
> )))
>
>
>
>
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
More information about the postgis-users
mailing list