annotate cpt_psm_recombine/lib/CPT/Plot/Colours.pm @ 0:b18e8268bf4e draft

Uploaded
author cpt
date Tue, 05 Jul 2022 05:05:13 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
1 package CPT::Plot::Colours;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
2
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
3 # ABSTRACT: Color transformation library.
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
4
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
5 our %artemis_colours = (
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
6 0 => 'rgb(255,255,255)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
7 1 => 'rgb(100,100,100)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
8 2 => 'rgb(255,0,0)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
9 3 => 'rgb(0,255,0)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
10 4 => 'rgb(0,0,255)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
11 5 => 'rgb(0,255,255)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
12 6 => 'rgb(255,0,255)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
13 7 => 'rgb(255,255,0)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
14 8 => 'rgb(152,251,152)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
15 9 => 'rgb(135,206,250)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
16 10 => 'rgb(255,165,0)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
17 11 => 'rgb(200,150,100)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
18 12 => 'rgb(255,200,200)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
19 13 => 'rgb(170,170,170)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
20 14 => 'rgb(0,0,0)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
21 15 => 'rgb(255,63,63)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
22 16 => 'rgb(255,127,127)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
23 17 => 'rgb(255,191,191)',
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
24 );
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
25
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
26 sub new {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
27 my $class = shift;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
28 my $self = {@_};
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
29 bless $self, $class;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
30 return $self;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
31 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
32
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
33 sub getColour {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
34 my ( $self, $string ) = @_;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
35 if ($string) {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
36 my $colour_result;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
37 if ( $string =~ qr/^\s*(\d+)\s*$/ ) {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
38 $colour_result = $artemis_colours{$1};
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
39 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
40 elsif ( $string =~ qr/^\s*(\d+)\s+(\d+)\s+(\d+)\s*$/ ) {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
41 $colour_result = "rgb($1,$2,$3)";
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
42 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
43 else {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
44 warn "Bad Colour Specfication";
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
45 return undef;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
46 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
47 return $colour_result;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
48 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
49 else {
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
50 return undef;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
51 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
52 }
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
53
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
54 1;
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
55
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
56 __END__
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
57
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
58 =pod
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
59
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
60 =encoding UTF-8
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
61
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
62 =head1 NAME
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
63
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
64 CPT::Plot::Colours - Color transformation library.
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
65
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
66 =head1 VERSION
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
67
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
68 version 1.96
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
69
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
70 =head1 AUTHOR
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
71
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
72 Eric Rasche <rasche.eric@yandex.ru>
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
73
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
74 =head1 COPYRIGHT AND LICENSE
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
75
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
76 This software is Copyright (c) 2014 by Eric Rasche.
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
77
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
78 This is free software, licensed under:
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
79
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
80 The GNU General Public License, Version 3, June 2007
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
81
b18e8268bf4e Uploaded
cpt
parents:
diff changeset
82 =cut