Ticket #1647 (closed defect: fixed)

Opened 15 months ago

Last modified 15 months ago

CreateTopology vs toTopoGeom: different behavior on the use of tolerance

Reported by: lrssvt Owned by: strk
Priority: medium Milestone: PostGIS 2.0.0
Component: topology Version: 2.0.x
Keywords: Cc:

Description

I have noticed a different behavior using the tolerance. If I set tolerance value to 1, in CreateTopology? function get:

while, if I set the same tolerance to toTopoGeom function get:

Also, if I set tolerance value to 2 in CreateTopology? I get this error:

ERROR: Invalid edge (no two distinct vertices exist)
SQL state: P0001
Context: PL/pgSQL function "topogeo_addlinestring" line 147 at assignment
SQL statement "INSERT INTO test_topo.relation(topogeo_id, layer_id, element_type, element_id) SELECT 1, 1, 2, topogeo_addLineString('test_topo', '01020000201555000003000000329ABD50D7F92041C6FE24DDB5AF014159102D22D7F92041DDB54250BBAF0141FC05F508D7F9204144A619EEC2AF0141'::geometry, 2);"
PL/pgSQL function "totopogeom" line 120 at EXECUTE statement

I did this test with the SQL script attached!

Attachments

strkDemoTopo.sql Download (1.0 KB) - added by lrssvt 15 months ago.
tolerancetoTopoGeom.png Download (3.2 KB) - added by lrssvt 15 months ago.
toleranceCreateTopology.png Download (3.2 KB) - added by lrssvt 15 months ago.

Change History

Changed 15 months ago by lrssvt

Changed 15 months ago by lrssvt

Changed 15 months ago by lrssvt

  Changed 15 months ago by strk

  • status changed from new to assigned

Please file another bug for the "no two distinct vertices" exception and keep this one for the different behavior.

follow-up: ↓ 3   Changed 15 months ago by strk

  • status changed from assigned to closed
  • resolution set to fixed

Good catch, toTopoGeom was failing to use the tolerance argument. Fixed with r9404

in reply to: ↑ 2   Changed 15 months ago by lrssvt

Replying to strk:

Good catch, toTopoGeom was failing to use the tolerance argument. Fixed with r9404

Good! it works!

Note: See TracTickets for help on using tickets.