]
Johnathon Lee updated TEIID-4580:
---------------------------------
Fix Version/s: 8.12.9.6_3
ST_PointOnSurface returns point on the boundary of the polygon
--------------------------------------------------------------
Key: TEIID-4580
URL:
https://issues.jboss.org/browse/TEIID-4580
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 9.x, 8.12.7.6_3
Reporter: Andrej Šmigala
Assignee: Steven Hawkins
Fix For: 9.1.2, 9.2, 8.12.9.6_3
Calling ST_PointOnSurface with a polygon argument returns one of the points of the
polygon boundary.
E.g.
{code:sql}
SELECT ST_AsText(ST_PointOnSurface(ST_GeomFromText('POLYGON ((67 13, 67 18, 59 18, 59
13, 67 13))')));
{code}
returns {{POINT (67 13)}}
The spec says
bq. PointOnSurface( ):Point—A point guaranteed to be on this Surface.
which might not be completely clear, but
[
several|http://gis.stackexchange.com/questions/76498/how-is-st-pointonsur...]
[
sources|http://workshops.boundlessgeo.com/postgis-intro/geometry_returnin...] indicate
that "on this surface" means _inside_ the surface.
When running the same query against a postgis instance (not through teiid), the result is
{{POINT(63 15.5)}}, which is actually inside the polygon.