[postgis-tickets] [PostGIS] #4183: Invalid output of ST_ClipByBox2D with an invalid polygon
PostGIS
trac at osgeo.org
Wed Sep 19 09:48:24 PDT 2018
#4183: Invalid output of ST_ClipByBox2D with an invalid polygon
-------------------------+--------------------------
Reporter: Algunenano | Owner: Algunenano
Type: defect | Status: assigned
Priority: medium | Milestone: PostGIS GEOS
Component: postgis | Version: trunk
Resolution: | Keywords:
-------------------------+--------------------------
Comment (by Algunenano):
BTW, here is the call to St_AsMVTGeom reproducing the issue
With clipping on you get the whole extent as the geometry output:
{{{
SELECT St_AsText(ST_AsMVTGeom(
ST_Simplify(ST_RemoveRepeatedPoints(the_geom, 19.109257221221924),
19.109257221221924, true),
'SRID=3857;POLYGON((-8238077.16046316 4980025.2668358,-8238077.16046316
4970241.3272153,-8228293.22084265 4970241.3272153,-8228293.22084265
4980025.2668358,-8238077.16046316 4980025.2668358))'::geometry,
256,
1,
true
)) as the_geom_webmercator
FROM (SELECT 7278 AS cartodb_id, 5 as numfloors,
'SRID=3857;MULTIPOLYGON(((-8231365.02893734
4980355.83678553,-8231366.94866817 4980350.2976052,-8231368.82883367
4980344.52250402,-8231370.96255986 4980333.47364302,-8231372.09200747
4980327.69798564,-8231372.84505222 4980323.68014243,-8231374.2255656
4980316.77455645,-8231375.10554947 4980309.86865218,-8231380.6311111
4980275.9676398,-8231394.82332406 4980186.31880185,-8231394.8569833
4980133.57928934,-8231367.43081065 4979982.17443372,-8231372.85765532
4979985.17751813,-8231395.25669799 4980132.93828551,-8231396.69199339
4980227.59327083,-8231377.30092207 4980340.77515211,-8231368.35061694
4980357.62467295,-8231365.02893734 4980355.83678553)))'::geometry as
the_geom) AS cdbq
the_geom_webmercator
-------------------------------------------------------------
MULTIPOLYGON(((175 -1,257 -1,257 257,-1 257,-1 -1,175 -1)))
}}}
With clipping off you get something that resembles the initial geometry
(keep in mind that MVT flips the `y` coordinate):
{{{
SELECT St_AsText(ST_AsMVTGeom(
ST_Simplify(ST_RemoveRepeatedPoints(the_geom, 19.109257221221924),
19.109257221221924, true),
'SRID=3857;POLYGON((-8238077.16046316 4980025.2668358,-8238077.16046316
4970241.3272153,-8228293.22084265 4970241.3272153,-8228293.22084265
4980025.2668358,-8238077.16046316 4980025.2668358))'::geometry,
256,
1,
false
)) as the_geom_webmercator
FROM (SELECT 7278 AS cartodb_id, 5 as numfloors,
'SRID=3857;MULTIPOLYGON(((-8231365.02893734
4980355.83678553,-8231366.94866817 4980350.2976052,-8231368.82883367
4980344.52250402,-8231370.96255986 4980333.47364302,-8231372.09200747
4980327.69798564,-8231372.84505222 4980323.68014243,-8231374.2255656
4980316.77455645,-8231375.10554947 4980309.86865218,-8231380.6311111
4980275.9676398,-8231394.82332406 4980186.31880185,-8231394.8569833
4980133.57928934,-8231367.43081065 4979982.17443372,-8231372.85765532
4979985.17751813,-8231395.25669799 4980132.93828551,-8231396.69199339
4980227.59327083,-8231377.30092207 4980340.77515211,-8231368.35061694
4980357.62467295,-8231365.02893734 4980355.83678553)))'::geometry as
the_geom) AS cdbq
;
the_geom_webmercator
-------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------
MULTIPOLYGON(((175.090909090909 -4.45454545454545,175 -5,176
-9,175.090909090909 -4.45454545454545)),((175.090909090909
-4.45454545454545,
176 1,175 -4,175.090909090909 -4.45454545454545)))
(1 row)
}}}
--
Ticket URL: <https://trac.osgeo.org/postgis/ticket/4183#comment:1>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.
More information about the postgis-tickets
mailing list