X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/c84dfb2d32d8e278576b2ed4f9be1b50404e6a4b..0f1bf743dcb721880bbcdaebfc182090ac5f6afa:/writing-latn.inc.pl?ds=inline diff --git a/writing-latn.inc.pl b/writing-latn.inc.pl index 640dd9b..83660bf 100644 --- a/writing-latn.inc.pl +++ b/writing-latn.inc.pl @@ -181,13 +181,18 @@ edgewrite => { list => [ map { ''.$_.'' } map { - my @coords = map { $_ % 2 << 3, $_ >> 1 << 3 } split //; # x,y, + my @route = split //; + my @coords = map { $_ % 2 << 3, $_ >> 1 << 3 } @route; # x,y, sprintf('', @coords[0, 1]) . # start point - sprintf('', "@coords") + sprintf('', join ' ', map { + my $pos = join(',', @coords[$_*2, $_*2 + 1]); + $_ > 1 && $route[$_] == $route[$_ - 2] ? 'Q4,4 '.$pos.'L' : # curve back + $pos + } 0 .. $#route) } # corners (0..3) clockwise from top-left in order qw( - 213 0232 1023 1323 01023 102 10132 0213 02 132 02123 023 20313 2031 + 213 0232 1023 1323 103 102 10132 0213 02 132 02123 023 20313 2031 10231 0102 10131 201 1032 013 0231 021 02131 0312 0313 0123 01 ) ],