somewhat similar result in one of the test cases
This commit is contained in:
parent
14eaa3a7d7
commit
d6f90a3ffb
9
wm.sql
9
wm.sql
@ -238,6 +238,7 @@ begin
|
|||||||
-- remove bends from bends[j+1] to bends[i] inclusive.
|
-- remove bends from bends[j+1] to bends[i] inclusive.
|
||||||
-- j := i+1
|
-- j := i+1
|
||||||
-- elif j > i:
|
-- elif j > i:
|
||||||
|
-- bends[i-1] = st_removepoint(bends[i-1], -1)
|
||||||
-- bends[i] = bends[i][1]
|
-- bends[i] = bends[i][1]
|
||||||
-- bends[i] = append(bends[i], multi[2][2..n])
|
-- bends[i] = append(bends[i], multi[2][2..n])
|
||||||
-- remove bends from bends[i+1] to bends[j] inclusive.
|
-- remove bends from bends[i+1] to bends[j] inclusive.
|
||||||
@ -247,7 +248,6 @@ begin
|
|||||||
raise notice 'bends[j]: %', st_astext(bends[j]);
|
raise notice 'bends[j]: %', st_astext(bends[j]);
|
||||||
raise notice 'a: %, b: %', st_astext(a), st_astext(b);
|
raise notice 'a: %, b: %', st_astext(a), st_astext(b);
|
||||||
raise notice 'multi: %', st_astext(multi);
|
raise notice 'multi: %', st_astext(multi);
|
||||||
insert into debug select x.path[1], x.geom from st_dump(multi) x;
|
|
||||||
|
|
||||||
raise notice '';
|
raise notice '';
|
||||||
prev_length = array_length(bends, 1);
|
prev_length = array_length(bends, 1);
|
||||||
@ -257,7 +257,12 @@ begin
|
|||||||
bends = bends[1:j] || bends[i+1:prev_length];
|
bends = bends[1:j] || bends[i+1:prev_length];
|
||||||
j = i;
|
j = i;
|
||||||
else
|
else
|
||||||
bends[i] = st_makeline(st_pointn(bends[i], 1), st_removepoint(st_geometryn(multi, 2), 0));
|
bends[i-1] = st_removepoint(bends[i-1], st_npoints(bends[i-1])-1);
|
||||||
|
bends[i] = st_makeline(
|
||||||
|
st_pointn(bends[i], 1),
|
||||||
|
st_removepoint(st_geometryn(multi, st_numgeometries(multi)), 0)
|
||||||
|
);
|
||||||
|
insert into debug select x.path[1], x.geom from st_dump(bends[i-1]) x;
|
||||||
bends = bends[1:i] || bends[j+1:prev_length];
|
bends = bends[1:i] || bends[j+1:prev_length];
|
||||||
end if;
|
end if;
|
||||||
j = j - prev_length + array_length(bends, 1);
|
j = j - prev_length + array_length(bends, 1);
|
||||||
|
Loading…
Reference in New Issue
Block a user