[PostGIS] #5709: ST_ChangeEdgeGeom fails to update face MBR when movement is smaller than float4

PostGIS trac at osgeo.org
Mon Apr 8 10:27:49 PDT 2024


#5709: ST_ChangeEdgeGeom fails to update face MBR when movement is smaller than
float4
-----------------------+---------------------------
  Reporter:  strk      |      Owner:  strk
      Type:  defect    |     Status:  new
  Priority:  medium    |  Milestone:  PostGIS 3.4.3
 Component:  topology  |    Version:  3.4.x
Resolution:            |   Keywords:
-----------------------+---------------------------
Comment (by strk):

 Testcase:
 {{{
 SELECT NULL FROM createtopology('t5709');
 SELECT 't5709', 'edge', * FROM TopoGeo_addLineString('t5709',
   'LINESTRING(
     12.123711265448206 65,
     12.123711265448206 65.21007378815003,
     12.208829785296102 65,
     12.123711265448206 65)
   ');
 SELECT 't5709', 'mbr-invalid-before', face_id
 FROM t5709.face
 WHERE face_id > 0
 AND NOT ST_Equals(
     mbr,
     ST_Envelope(
       ST_GetFaceGeometry('t5709', face_id)
     )
   );
 SELECT NULL FROM ST_ChangeEdgeGeom('t5709', 1,
   'LINESTRING(
     12.123711265448206 65,
     12.123711265448206 65.210073788150040000,
     12.208829785296102 65,
     12.123711265448206 65)
   ');
 SELECT 't5709', 'mbr-invalid-after', face_id
 FROM t5709.face
 WHERE face_id > 0
 AND NOT ST_Equals(
     mbr,
     ST_Envelope(
       ST_GetFaceGeometry('t5709', face_id)
     )
   );
 }}}
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/5709#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