[postgis-users] ST_CoveredBy supporting geography?

Paul Ramsey pramsey at opengeo.org
Tue May 11 15:14:25 PDT 2010


The doc example appears to not mention the limitation in the geography
implementation, which can be fixed.  The example is correct, insofar
as it is against geometries, but again, doesn't illustrate the
limitation in the geography implementation.

I wonder why I didn't do a full covers/coveredby implementation...
firstpoint(A) within B and all edges of A don't cross B implies A
coveredby B... hm.

You can cast geography to geometry and use the function that way but
be forewarned about any shape that crosses the datesline/poles or has
very long edges.

On Tue, May 11, 2010 at 3:06 PM, Nick Bower <nick at petangent.net> wrote:
> Thanks but not according to the doc I think?
> 1) Abstract superclass is mentioned in API, not point,
> 2) the SQL example uses circles
> 3) the blog link specifically uses polygons in it's discussion of OGC
> coverage behaviour.
>
> http://postgis.refractions.net/documentation/manual-1.5/ST_CoveredBy.html
>
> I'm not disputing your explanation given the evidence, but suggest the docs
> are entirely misleading for me figuring out if one polygon geography is
> wholey inside another.
>
>
> On 11/05/2010, at 11:48 PM, Paul Ramsey <pramsey at opengeo.org> wrote:
>
>> Bad sentence construction in the error, perhaps? The restriction "only
>> polygon and point" means that one argument must be a polygon and one
>> must be a point. Both your arguments are polygons.
>>
>> P.
>>
>> On Tue, May 11, 2010 at 4:51 AM, Nicholas Bower <nick at petangent.net>
>> wrote:
>>>
>>> I've read the 1.5 reference docs but can't figure out what is wrong with
>>> below.  ST_CoveredBy(geography, geography) should work right?
>>>  select count(*) from t_swath_metadata where ST_CoveredBy(
>>>  ST_GeogFromText('SRID=4326;POLYGON((123.1773295292851
>>> -16.07501950971949,
>>>                          122.745660066063 -16.83965661151543,
>>>                          124.1310486688905 -16.44978157737539,
>>>                          123.1773295292851 -16.07501950971949))'),
>>> swath_bounding);
>>> ERROR:  geography_covers: only POLYGON and POINT types are currently
>>> supported
>>> CONTEXT:  SQL function "st_covers" statement 1
>>> ********** Error **********
>>> ERROR: geography_covers: only POLYGON and POINT types are currently
>>> supported
>>> SQL state: XX000
>>> Context: SQL function "st_covers" statement 1
>>>
>>> db=> \d t_swath_metadata;
>>> ...
>>>  swath_bounding        | geography(Polygon,4326)     |
>>> Indexes:
>>>    ...
>>>    "t_swath_metadata_swath_bounding_key" gist (swath_bounding)
>>>
>>> Thanks, Nick
>>>
>>> _______________________________________________
>>> postgis-users mailing list
>>> postgis-users at postgis.refractions.net
>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>
>>>
>> _______________________________________________
>> postgis-users mailing list
>> postgis-users at postgis.refractions.net
>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
> _______________________________________________
> 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