From dbc26df854770fd1670912f0e3cb88eadd3b533b Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 2 Mar 2019 17:07:53 +0000 Subject: [PATCH] water cubes --- generate-board | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/generate-board b/generate-board index ec89844..cda2272 100755 --- a/generate-board +++ b/generate-board @@ -420,6 +420,10 @@ sub one_hs ($$) { '0 setgray'); } +our $cube_sz = 6 * MM2PT; +our $cube_gap = $cube_sz * 0.2; +our $cube_lw = ($cube_sz * 0.1); + sub label_faces() { my $sz = 18; my $shadow = $sz * 0.1; @@ -437,7 +441,18 @@ sub label_faces() { + $hs_sz*0.15); one_hs($rr->{Colour}, $hspos); } - # xxx water cubes + my $w = $rr->{Water}; + if ($w) { + print STDERR " water $w in $rr->{Name}\n"; + my $down = water_cubes_sz(2) - water_cubes_sz(1) + $cube_gap; + $pos -= mkvec(0, -0.5 * $down); + o(" gsave\n"); + o(" ", psvec($pos), " translate\n"); + o(" 0 ", -($sz * @$words), " translate\n"); + o(" ", -0.5 * water_cubes_sz($w)," ", -$down, " translate\n"); + water_cubes($w); + o(" grestore\n"); + } o(" /words {\n"); foreach my $word (@$words) { $pos += mkvec(0,-$sz); @@ -462,10 +477,6 @@ END } } -our $cube_sz = 6 * MM2PT; -our $cube_gap = $cube_sz * 0.2; -our $cube_lw = ($cube_sz * 0.1); - sub water_cubes_sz($){ my ($n) = @_; ($cube_sz + $cube_lw) * $n + ($cube_gap * ($n-1)); -- 2.30.2