From: Sandro Santilli Date: Fri, 27 Jan 2012 11:36:58 +0000 (+0000) Subject: More test for update of isolated nodes in split-faces. X-Git-Tag: 2.0.0alpha3~55 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=53e18162d4b9465ef1733b43226bd8b23128a721;p=postgis More test for update of isolated nodes in split-faces. git-svn-id: http://svn.osgeo.org/postgis/trunk@8943 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/topology/test/regress/st_addedgemodface.sql b/topology/test/regress/st_addedgemodface.sql index 8d3b172f9..0199e0f34 100644 --- a/topology/test/regress/st_addedgemodface.sql +++ b/topology/test/regress/st_addedgemodface.sql @@ -342,7 +342,11 @@ SELECT 'T21', 'E'||edge_id, next_left_edge, next_right_edge, -- -- Split a face containing an hole +-- Faces on both sides contain isolated nodes. -- +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 23, 'POINT(26 36)'), 23; +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 23, 'POINT(26 34.5)'), 23; +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 23, 'POINT(26 33)'), 23; INSERT INTO newedge SELECT 22, topology.st_addedgemodface('city_data', 3, 3, 'LINESTRING(25 35, 27 35, 26 34, 25 35)'); SELECT 'T22', 'E'||edge_id, next_left_edge, next_right_edge, @@ -351,14 +355,14 @@ SELECT 'T22', 'E'||edge_id, next_left_edge, next_right_edge, SELECT edge_id FROM newedge WHERE id IN (22, 16) UNION VALUES (2),(3) ) ORDER BY edge_id; +SELECT 'T22', 'N' || node_id, containing_face FROM + city_data.node WHERE node_id IN ( 27, 28, 29 ) + ORDER BY node_id; -- -- Split a face containing an holes in both sides of the split +-- Faces on both sides contain isolated nodes. -- --- Both split faces containing an isolated node. -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 28, 'POINT(27 33)'), 28; -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 28, 'POINT(25 38)'), 28; -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 2, 'POINT(21 36)'), 2; INSERT INTO newedge SELECT 23, topology.st_addedgemodface('city_data', 2, 3, 'LINESTRING(25 30, 29 32, 29 37, 25 35)'); SELECT 'T23', 'E'||edge_id, next_left_edge, next_right_edge, diff --git a/topology/test/regress/st_addedgemodface_expected b/topology/test/regress/st_addedgemodface_expected index d317d7fe2..ecf7409f1 100644 --- a/topology/test/regress/st_addedgemodface_expected +++ b/topology/test/regress/st_addedgemodface_expected @@ -97,22 +97,25 @@ T21|E16|29|-47|12|0 T21|E36|-13|-36|0|19 T21|E46|-14|47|26|27 T21|E47|-46|36|27|0 +T22-|N27|23 +T22-|N28|23 +T22-|N29|23 T22|E2|3|39|28|0 T22|E3|48|2|28|28 T22|E42|42|-42|28|2 T22|E48|-3|-48|28|23 -T23|N27|28 -T23|N28|28 -T23|N29|2 +T22|N27|28 +T22|N28|23 +T22|N29|28 T23|E2|3|39|28|0 T23|E3|-49|49|28|29 T23|E39|-2|-39|0|22 T23|E42|42|-42|28|2 T23|E48|-3|-48|29|23 T23|E49|48|2|29|28 -T23|N27|29 -T23|N28|28 -T23|N29|2 +T23|N27|28 +T23|N28|23 +T23|N29|29 F3,F4|{3:3,3:4,3:10,3:16,3:17} F5,N4|{1:4,3:5,3:11} F0| diff --git a/topology/test/regress/st_addedgenewfaces.sql b/topology/test/regress/st_addedgenewfaces.sql index 4905c391d..235aef352 100644 --- a/topology/test/regress/st_addedgenewfaces.sql +++ b/topology/test/regress/st_addedgenewfaces.sql @@ -342,7 +342,11 @@ SELECT 'T21', 'E'||edge_id, next_left_edge, next_right_edge, -- -- Split a face containing an hole +-- Faces on both sides contain isolated nodes. -- +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 32, 'POINT(26 36)'), 32; +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 32, 'POINT(26 34.5)'), 32; +SELECT 'T22-', 'N' || topology.st_addisonode('city_data', 32, 'POINT(26 33)'), 32; INSERT INTO newedge SELECT 22, topology.st_addedgenewfaces('city_data', 3, 3, 'LINESTRING(25 35, 27 35, 26 34, 25 35)'); SELECT 'T22', 'E'||edge_id, next_left_edge, next_right_edge, @@ -351,14 +355,14 @@ SELECT 'T22', 'E'||edge_id, next_left_edge, next_right_edge, SELECT edge_id FROM newedge WHERE id IN (22, 16) UNION VALUES (2),(3) ) ORDER BY edge_id; +SELECT 'T22', 'N' || node_id, containing_face FROM + city_data.node WHERE node_id IN ( 27, 28, 29 ) + ORDER BY node_id; -- -- Split a face containing an holes in both sides of the split +-- Faces on both sides contain isolated nodes. -- --- Both split faces containing an isolated node. -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 38, 'POINT(27 33)'), 38; -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 38, 'POINT(25 38)'), 38; -SELECT 'T23', 'N' || topology.st_addisonode('city_data', 31, 'POINT(21 36)'), 31; INSERT INTO newedge SELECT 23, topology.st_addedgenewfaces('city_data', 2, 3, 'LINESTRING(25 30, 29 32, 29 37, 25 35)'); SELECT 'T23', 'E'||edge_id, next_left_edge, next_right_edge, diff --git a/topology/test/regress/st_addedgenewfaces_expected b/topology/test/regress/st_addedgenewfaces_expected index 55094f674..1debd775c 100644 --- a/topology/test/regress/st_addedgenewfaces_expected +++ b/topology/test/regress/st_addedgenewfaces_expected @@ -97,22 +97,25 @@ T21|E16|29|-47|15|0 T21|E36|-13|-36|0|27 T21|E46|-14|47|35|36 T21|E47|-46|36|36|0 +T22-|N27|32 +T22-|N28|32 +T22-|N29|32 T22|E2|3|39|38|0 T22|E3|48|2|38|38 T22|E42|42|-42|38|31 T22|E48|-3|-48|38|37 -T23|N27|38 -T23|N28|38 -T23|N29|31 +T22|N27|38 +T22|N28|37 +T22|N29|38 T23|E2|3|39|39|0 T23|E3|-49|49|39|40 T23|E39|-2|-39|0|30 T23|E42|42|-42|39|31 T23|E48|-3|-48|40|37 T23|E49|48|2|40|39 -T23|N27|40 -T23|N28|39 -T23|N29|31 +T23|N27|39 +T23|N28|37 +T23|N29|40 F3,F4|{3:10,3:11,3:22,3:24,3:25} F5,N4|{1:4,3:12,3:13} F0|