use strict;
-our $black = '0 0 0 setrgbcolor';
-
my $pumpkin = [".9 .7 0", "0 0 0"];
my $green = ["0 .5 0", "1 1 1"];
my $red = ["1 0 0", "0 0 0"];
my $purple = ["1 0 0.8", "0 0 0"];
my $lotus = ["0.6 0.7 .5", "0.5 0.5 0"];
+sub colour ($) {
+ my ($c) = @_;
+ if ($c =~ m/[^ 0-9.]/) {
+ return $c;
+ } elsif ($c =~ m/^\s*\S+\s*$/) {
+ return "$c setgray";
+ } elsif ($c =~ m/./) {
+ return "$c setrgbcolor";
+ } else {
+ return '';
+ }
+}
+
+our $black = colour('0');
+
sub chip ($$) {
my ($cary, $pips) = @_; # put in a gsave translate
my $o = <<END;
newpath
0 0 chip 0.5 mul 0 360 arc
gsave 1 setlinewidth $black stroke grestore
- $cary->[0] setrgbcolor fill
+ ${\ colour($cary->[0]) } fill
END
if ($pips) {
$o .= <<END;
- $cary->[1] setrgbcolor
+ ${\ colour($cary->[1]) }
END
}
my $spot = sub {