From 1524832cdec53eefd9737c1a217d23fa3cd4d1e7 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 3 Mar 2019 21:14:36 +0000 Subject: [PATCH] sort out track, wip, nfc --- generate-board | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/generate-board b/generate-board index 4da3d32..1b16800 100755 --- a/generate-board +++ b/generate-board @@ -567,10 +567,9 @@ sub sea_track(){ my $dx = $token_sz * 1.25; my $linecolour = darkerpscolour('cube', 0.25); my @pos; - for my $i (-1..$#$track) { - $pos[$i+1] = mkvec(0, ($i - 0.5 * @$track) * $dy); + for my $i (0..$#$track) { + $pos[$i] = mkvec(0, ($i - 0.5 * @$track) * $dy); } - my $pos_ = shift @pos; my $prepline = "$linecolour $hs_lw setlinewidth newpath"; o(" $prepline\n"); o(" ",psvec($pos[0])," moveto ",psvec($pos[-1])," lineto stroke\n"); @@ -579,11 +578,13 @@ sub sea_track(){ pscolour($c{Colours}{cube}), $linecolour); } - for my $i (-1..$#pos-1) { - my $differs = $i >=0 && $track->[$i] != $track->[$i+1]; + my $last = 0; + for my $i (0..$#pos) { + my $differs = $track->[$i] != $last; + $last = $track->[$i]; o(" $prepline\n"); o(" gsave ", - psvec(($i >=0 ? $pos[$i] : $pos_) + mkvec(-0.0 * $token_sz, $dy/2))," translate\n"); + psvec($pos[$i] + mkvec(-0.0 * $token_sz, $dy/2))," translate\n"); if ($i >= 0 && ($i == 0 || $track->[$i] != $track->[$i-1])) { @@ -603,13 +604,13 @@ sub sea_track(){ o(" grestore\n"); } if ($differs || $i==-1) { - if ($differs) { - o(" 0 0 moveto", + if ($i > 0) { + o(" 0 -$dy moveto", " ",psvec(mkvec( $dx + $cube_sz, 0 )), " rlineto stroke\n"); } o(" ",($token_sz * 0.6 + $cube_gap)," ", - ($dy * 0.5 - 0.5 * (water_cubes_sz(2))), + (-$dy * 0.5 - 0.5 * (water_cubes_sz(2))), " translate\n"); my $bottom = int(($track->[$i+1] + 1) / 2); water_cubes($bottom); -- 2.30.2