]> git.ktnx.net Git - mobile-ledger.git/blobdiff - tools/gen-styles
darker colour palette, matching theme (pre-generated) and run-time colours
[mobile-ledger.git] / tools / gen-styles
index 0012d5d52921b190123fa36ae409d7a7ec782e27..9191e18af29e5244b2f9ead7a654210daa964ab4 100644 (file)
@@ -178,19 +178,26 @@ sub hslStyleForHue {
        my $base = shift;
        my $baseIndent = shift // '';
 
-       my $blueL = 0.665;
-       my $yellowL = 0.350;
-
-       my $blueL2 = 0.350;
-       my $yellowL2 = 0.500;
-
-       # $y == 0 for yellow
-       my $y = $hue - 60;
-       $y += 360 if $y < 0;
-       # $q == 0 for yellow, 1 for blue
-       my $q = cos(deg2rad(abs($y-180)/2.0));
-       my $l1 = $yellowL + ($blueL - $yellowL) * $q;
-       my $l2 = 0.250 + 0.250 * $q;
+       my %lQ = (
+               0   => 0.450,   # red
+               60  => 0.400,   # yellow
+               120 => 0.400,   # green
+               180 => 0.400,   # cyan
+               240 => 0.750,   # blue
+               300 => 0.500,   # magenta
+       );
+       $lQ{360} = $lQ{0};
+
+       my ($x0, $x1, $y0, $y1);
+       $x0 = (int( $hue / 60 ) * 60) % 360;
+       $x1 = $x0 + 60;
+       $y0 = $lQ{$x0};
+       $y1 = $lQ{$x1};
+
+       # linear interpolation
+       my $l1 = $y0 + 1.0 * ( $hue - $x0 ) * ( $y1 - $y0 ) / ( $x1 - $x0 );
+
+       my $l2 = $l1 * 0.80;
        my $l3 = 0.950;
        my $l4 = 0.980;