[postgis-users] Function ST_CONTAINS respectively CONTAINS does not find Start-Endpoints in MultiLineString
Martin Davis
mbdavis at refractions.net
Wed Oct 1 08:48:46 PDT 2008
The OGC definition of contains is equivalent to:
A contains B iff Every point of the B is a point of A, and the interiors
of A and B have at least one point in common.
A consequence of this definition is that "Geometries do not contain
their boundary" - if B lies wholly in the boundary of A, it is A does
*not* contain B. This is the situation that you are seeing.
Weird maybe - but that's the spec.
pleasecontactmee at aim.com wrote:
> Hello,
>
> Can you please help me, where am I wrong by using the PostGIS Function
> "Contains(geometry A, geometry B)" (referring to chapter 6.1. OpenGIS
> Functions of PostGIS manual)
> which delivers back only points within a MULTILINESTRING except
> "start-" and "endpoint" of it?
>
> Here are some examples
> This statement returns "false" even though the first POINT(7.0 50.0)
> is part of the MultiLineString
> SELECT Contains (GeomFromEWKT('SRID=4326;MULTILINESTRING((7.0 50.0,8.0
> 51.0,9.0 52.0))'), (GeomFromEWKT('SRID=4326;POINT(7.0 50.0)')) );
> e.g. the "middle" point delivers what I expect="true"
> SELECT Contains (GeomFromEWKT('SRID=4326;MULTILINESTRING((7.0 50.0,8.0
> 51.0,9.0 52.0))'), (GeomFromEWKT('SRID=4326;POINT(8.0 51.0)')) );
>
> What I need is a function which is able to find ONE point within a
> MULTILINESTRING which can be the first, last or a point between them.
> I am using pgAdminIII v1.6.3, "PostgreSQL 8.2.5" and PostGIS Version
> "1.1 USE_GEOS=1 USE_PROJ=1 USE_STATS=1"
>
> Thank you very much,
> Wolfgang
> ------------------------------------------------------------------------
> *AOL eMail auf Ihrem Handy!*Ab sofort können Sie auch unterwegs Ihre
> AOL email abrufen. Registrieren <http://www.aol.de/Webmail/> Sie sich
> jetzt kostenlos.
> ------------------------------------------------------------------------
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
--
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022
More information about the postgis-users
mailing list