/
palette-to-js.py
63 lines (58 loc) · 1.41 KB
/
palette-to-js.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import os
import json
palettes = ['acton',
'bam',
'bamO',
'bamako',
'batlow',
'batlowK',
'batlowW',
'berlin',
'bilbao',
'broc',
'brocO',
'buda',
'bukavu',
'cork',
'corkO',
'davos',
'devon',
'fes',
'glasgow',
'grayC',
'hawaii',
'imola',
'lajolla',
'lapaz',
'lipari',
'lisbon',
'managua',
'navia',
'naviaW',
'nuuk',
'oleron',
'oslo',
'roma',
'romaO',
'tofino',
'tokyo',
'turku',
'vanimo',
'vik',
'vikO'
]
colormap = {}
for pal in palettes:
pal_name = pal[0].upper() + pal[1:]
lut_path = 'ScientificColourMaps8/' + pal + '/' + pal + '.lut'
if os.path.isfile(lut_path):
lut_file = open(lut_path, 'r')
lut = lut_file.readlines()
hex = []
for line in lut:
rgb = line.split(' ')
hex.append('#%02x%02x%02x' % (int(rgb[0]), int(rgb[1]), int(rgb[2])))
if len(lut) >= 256:
colormap[pal_name] = hex
js = json.dumps(colormap).replace('], ', '],\n')
print('var colormaps = ' + js + ';')