[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