wip demo self-crossing: it's now incorrectly mutating things
This commit is contained in:
parent
c30153c554
commit
a37385e0d1
@ -48,12 +48,18 @@ but they will be eliminated by joining A and B anyway.
|
||||
Also, there is another way to remove self-crossing, without removing most of
|
||||
the bend. E.g. from:
|
||||
|
||||
\ \
|
||||
\ /
|
||||
B\ | __
|
||||
| | / \
|
||||
| |____/A |
|
||||
\__________|
|
||||
|
||||
Instead of:
|
||||
|
||||
\ /
|
||||
\/ A'
|
||||
B
|
||||
|
||||
To:
|
||||
|
||||
\ \_
|
||||
|
8
wm.sql
8
wm.sql
@ -234,6 +234,14 @@ begin
|
||||
-- bends[i] = append(bends[i], multi[2][2..n])
|
||||
-- remove bends from bends[i+1] to bends[j] inclusive.
|
||||
|
||||
if j < i then
|
||||
bends[j] = st_geometryn(multi, 1);
|
||||
bends[j] = st_setpoint(bends[j], st_npoints(bends[j])-1, st_pointn(bends[i], st_npoints(bends[i])));
|
||||
bends = bends[1:j] || bends[i+1:array_length(bends, 1)];
|
||||
else
|
||||
--
|
||||
end if;
|
||||
|
||||
end loop;
|
||||
|
||||
end loop;
|
||||
|
Loading…
Reference in New Issue
Block a user