chiark / gitweb /
dw dykes
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 2 Mar 2019 18:23:54 +0000 (18:23 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 2 Mar 2019 18:23:54 +0000 (18:23 +0000)
generate-board

index 198c73f203d0eaf43beda2529dde032d312afbb8..171dbda7e5bf2e045dcfcd25ed6eb9a6992502b6 100755 (executable)
@@ -410,22 +410,25 @@ sub edge_faces() {
 our $hs_sz = 17 * MM2PT;
 our $hs_lw = 3;
 
-sub token_circle ($$$$) {
-  my ($what, $pos, $fillcolour, $edgecolour) = @_;
-  o(sprintf <<END, $what, $fillcolour, psvec($pos), $hs_sz/2, $edgecolour);
+sub token_circle ($$$$;$$) {
+  my ($what, $pos, $fillcolour, $edgecolour, $sz,$lw) = @_;
+  $sz //= $hs_sz;
+  $lw //= $hs_lw;
+  o(sprintf <<END, $what, $fillcolour, psvec($pos), $sz/2, $edgecolour);
    %% %s
    newpath %s
      %s %f 0 360 arc closepath gsave fill grestore
-     %s $hs_lw setlinewidth stroke
+     %s $lw setlinewidth stroke
 END
 }
 
-sub one_hs ($$) {
-  my ($colour, $hspos) = @_;
+sub one_hs ($$;$$) {
+  my ($colour, $hspos, $sz, $lw) = @_;
   token_circle("HS - $colour",
               $hspos,
               darkerpscolour($colour, 0.75),
-              '0 setgray');
+              '0 setgray',
+             $sz,$lw);
 }
 
 our $cube_sz = 6 * MM2PT;
@@ -560,8 +563,8 @@ sub dykes(){
   o("    gsave 0.50 setgray fill grestore\n");
   o("    gsave 0.00 setgray $lw setlinewidth stroke grestore\n");
   o("  } bind def\n");
-  my $symbol_sz = $w * 1.33;
-  my $t_sz = $symbol_sz;
+  my $symbol_sz = $w * 1.50;
+  my $t_sz = $symbol_sz * 1.0;
   my $t_at = sub {
     my ($ang) = @_;
     print STDERR "ANG $ang\n";
@@ -604,7 +607,8 @@ sub dykes(){
        my $nsymbols = !!$initial + !!$adj->{Deltawerk};
        o("   ", -0.5 * $symbol_sz * ($nsymbols-1)," 0 translate\n");
        if ($adj->{Deltawerk}) {
-         o("  $symbol_sz 0 translate\n");
+         one_hs('red', mkvec(0,0), $symbol_sz * 0.8, $lw);
+         o("  $symbol_sz 0 translate % DW\n");
        }
        o(" $angle neg rotate dtriangle ") if $initial;
       }