File: make_color3_hsl.py

package info (click to toggle)
python-tinycss2 0.6.1-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 608 kB
  • sloc: python: 1,719; makefile: 19
file content (23 lines) | stat: -rw-r--r-- 652 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import colorsys  # It turns out Python already does HSL -> RGB!


def trim(s):
    return s if not s.endswith('.0') else s[:-2]


print('[')
print(',\n'.join(
    '"hsl%s(%s, %s%%, %s%%%s)", [%s, %s, %s, %s]' % (
        ('a' if a is not None else '', h,
         trim(str(s / 10.)), trim(str(l / 10.)),
         ', %s' % a if a is not None else '') +
        tuple(trim(str(round(v, 10)))
              for v in colorsys.hls_to_rgb(h / 360., l / 1000., s / 1000.)) +
        (a if a is not None else 1,)
    )
    for a in [None, 1, .2, 0]
    for l in range(0, 1001, 125)
    for s in range(0, 1001, 125)
    for h in range(0, 360, 30)
))
print(']')