commit 503df807a1d7659850deca687081e91fb672272e
parent a6cb3cbb779bbf8269a85093e3e04e04601dc2eb
Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
Date: Sat, 15 Feb 2014 21:11:56 +0100
added 256 color palette, still to be incorporated in GUI
Diffstat:
4 files changed, 556 insertions(+), 0 deletions(-)
diff --git a/256-color-rgb.dat b/256-color-rgb.dat
@@ -0,0 +1,256 @@
+0 0 0
+128 0 0
+0 128 0
+128 128 0
+0 0 128
+128 0 128
+0 128 128
+192 192 192
+128 128 128
+255 0 0
+0 255 0
+255 255 0
+0 0 255
+255 0 255
+0 255 255
+255 255 255
+0 0 0
+0 0 95
+0 0 135
+0 0 175
+0 0 215
+0 0 255
+0 95 0
+0 95 95
+0 95 135
+0 95 175
+0 95 215
+0 95 255
+0 135 0
+0 135 95
+0 135 135
+0 135 175
+0 135 215
+0 135 255
+0 175 0
+0 175 95
+0 175 135
+0 175 175
+0 175 215
+0 175 255
+0 215 0
+0 215 95
+0 215 135
+0 215 175
+0 215 215
+0 215 255
+0 255 0
+0 255 95
+0 255 135
+0 255 175
+0 255 215
+0 255 255
+95 0 0
+95 0 95
+95 0 135
+95 0 175
+95 0 215
+95 0 255
+95 95 0
+95 95 95
+95 95 135
+95 95 175
+95 95 215
+95 95 255
+95 135 0
+95 135 95
+95 135 135
+95 135 175
+95 135 215
+95 135 255
+95 175 0
+95 175 95
+95 175 135
+95 175 175
+95 175 215
+95 175 255
+95 215 0
+95 215 95
+95 215 135
+95 215 175
+95 215 215
+95 215 255
+95 255 0
+95 255 95
+95 255 135
+95 255 175
+95 255 215
+95 255 255
+135 0 0
+135 0 95
+135 0 135
+135 0 175
+135 0 215
+135 0 255
+135 95 0
+135 95 95
+135 95 135
+135 95 175
+135 95 215
+135 95 255
+135 135 0
+135 135 95
+135 135 135
+135 135 175
+135 135 215
+135 135 255
+135 175 0
+135 175 95
+135 175 135
+135 175 175
+135 175 215
+135 175 255
+135 215 0
+135 215 95
+135 215 135
+135 215 175
+135 215 215
+135 215 255
+135 255 0
+135 255 95
+135 255 135
+135 255 175
+135 255 215
+135 255 255
+175 0 0
+175 0 95
+175 0 135
+175 0 175
+175 0 215
+175 0 255
+175 95 0
+175 95 95
+175 95 135
+175 95 175
+175 95 215
+175 95 255
+175 135 0
+175 135 95
+175 135 135
+175 135 175
+175 135 215
+175 135 255
+175 175 0
+175 175 95
+175 175 135
+175 175 175
+175 175 215
+175 175 255
+175 215 0
+175 215 95
+175 215 135
+175 215 175
+175 215 215
+175 215 255
+175 255 0
+175 255 95
+175 255 135
+175 255 175
+175 255 215
+175 255 255
+215 0 0
+215 0 95
+215 0 135
+215 0 175
+215 0 215
+215 0 255
+215 95 0
+215 95 95
+215 95 135
+215 95 175
+215 95 215
+215 95 255
+215 135 0
+215 135 95
+215 135 135
+215 135 175
+215 135 215
+215 135 255
+215 175 0
+215 175 95
+215 175 135
+215 175 175
+215 175 215
+215 175 255
+215 215 0
+215 215 95
+215 215 135
+215 215 175
+215 215 215
+215 215 255
+215 255 0
+215 255 95
+215 255 135
+215 255 175
+215 255 215
+215 255 255
+255 0 0
+255 0 95
+255 0 135
+255 0 175
+255 0 215
+255 0 255
+255 95 0
+255 95 95
+255 95 135
+255 95 175
+255 95 215
+255 95 255
+255 135 0
+255 135 95
+255 135 135
+255 135 175
+255 135 215
+255 135 255
+255 175 0
+255 175 95
+255 175 135
+255 175 175
+255 175 215
+255 175 255
+255 215 0
+255 215 95
+255 215 135
+255 215 175
+255 215 215
+255 215 255
+255 255 0
+255 255 95
+255 255 135
+255 255 175
+255 255 215
+255 255 255
+8 8 8
+18 18 18
+28 28 28
+38 38 38
+48 48 48
+58 58 58
+68 68 68
+78 78 78
+88 88 88
+96 96 96
+102 102 102
+118 118 118
+128 128 128
+138 138 138
+148 148 148
+158 158 158
+168 168 168
+178 178 178
+188 188 188
+198 198 198
+208 208 208
+218 218 218
+228 228 228
+238 238 238
diff --git a/256-color.dat b/256-color.dat
@@ -0,0 +1,256 @@
+000000
+800000
+008000
+808000
+000080
+800080
+008080
+c0c0c0
+808080
+ff0000
+00ff00
+ffff00
+0000ff
+ff00ff
+00ffff
+ffffff
+000000
+00005f
+000087
+0000af
+0000d7
+0000ff
+005f00
+005f5f
+005f87
+005faf
+005fd7
+005fff
+008700
+00875f
+008787
+0087af
+0087d7
+0087ff
+00af00
+00af5f
+00af87
+00afaf
+00afd7
+00afff
+00d700
+00d75f
+00d787
+00d7af
+00d7d7
+00d7ff
+00ff00
+00ff5f
+00ff87
+00ffaf
+00ffd7
+00ffff
+5f0000
+5f005f
+5f0087
+5f00af
+5f00d7
+5f00ff
+5f5f00
+5f5f5f
+5f5f87
+5f5faf
+5f5fd7
+5f5fff
+5f8700
+5f875f
+5f8787
+5f87af
+5f87d7
+5f87ff
+5faf00
+5faf5f
+5faf87
+5fafaf
+5fafd7
+5fafff
+5fd700
+5fd75f
+5fd787
+5fd7af
+5fd7d7
+5fd7ff
+5fff00
+5fff5f
+5fff87
+5fffaf
+5fffd7
+5fffff
+870000
+87005f
+870087
+8700af
+8700d7
+8700ff
+875f00
+875f5f
+875f87
+875faf
+875fd7
+875fff
+878700
+87875f
+878787
+8787af
+8787d7
+8787ff
+87af00
+87af5f
+87af87
+87afaf
+87afd7
+87afff
+87d700
+87d75f
+87d787
+87d7af
+87d7d7
+87d7ff
+87ff00
+87ff5f
+87ff87
+87ffaf
+87ffd7
+87ffff
+af0000
+af005f
+af0087
+af00af
+af00d7
+af00ff
+af5f00
+af5f5f
+af5f87
+af5faf
+af5fd7
+af5fff
+af8700
+af875f
+af8787
+af87af
+af87d7
+af87ff
+afaf00
+afaf5f
+afaf87
+afafaf
+afafd7
+afafff
+afd700
+afd75f
+afd787
+afd7af
+afd7d7
+afd7ff
+afff00
+afff5f
+afff87
+afffaf
+afffd7
+afffff
+d70000
+d7005f
+d70087
+d700af
+d700d7
+d700ff
+d75f00
+d75f5f
+d75f87
+d75faf
+d75fd7
+d75fff
+d78700
+d7875f
+d78787
+d787af
+d787d7
+d787ff
+d7af00
+d7af5f
+d7af87
+d7afaf
+d7afd7
+d7afff
+d7d700
+d7d75f
+d7d787
+d7d7af
+d7d7d7
+d7d7ff
+d7ff00
+d7ff5f
+d7ff87
+d7ffaf
+d7ffd7
+d7ffff
+ff0000
+ff005f
+ff0087
+ff00af
+ff00d7
+ff00ff
+ff5f00
+ff5f5f
+ff5f87
+ff5faf
+ff5fd7
+ff5fff
+ff8700
+ff875f
+ff8787
+ff87af
+ff87d7
+ff87ff
+ffaf00
+ffaf5f
+ffaf87
+ffafaf
+ffafd7
+ffafff
+ffd700
+ffd75f
+ffd787
+ffd7af
+ffd7d7
+ffd7ff
+ffff00
+ffff5f
+ffff87
+ffffaf
+ffffd7
+ffffff
+080808
+121212
+1c1c1c
+262626
+303030
+3a3a3a
+444444
+4e4e4e
+585858
+606060
+666666
+767676
+808080
+8a8a8a
+949494
+9e9e9e
+a8a8a8
+b2b2b2
+bcbcbc
+c6c6c6
+d0d0d0
+dadada
+e4e4e4
+eeeeee
diff --git a/convert-hex-to-rgb.py b/convert-hex-to-rgb.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+import numpy
+
+_NUMERALS = '0123456789abcdefABCDEF'
+_HEXDEC = {v: int(v, 16) for v in (x+y for x in _NUMERALS for y in
+ _NUMERALS)}
+LOWERCASE, UPPERCASE = 'x', 'X'
+
+def rgb(triplet):
+ return (_HEXDEC[triplet[0:2]], _HEXDEC[triplet[2:4]],
+ _HEXDEC[triplet[4:6]])
+
+#hexlist = numpy.loadtxt('./256-color.dat')
+rgblist = numpy.empty((256,3))
+fin = open('./256-color.dat')
+i = 0
+for line in fin:
+ #print line,
+ rgbval = rgb(line)
+ #print rgbval
+ rgblist[i,:] = rgbval
+ i += 1
+
+numpy.savetxt('256-color-rgb.dat', rgblist, fmt='%d')
diff --git a/cross-stitch.py b/cross-stitch.py
@@ -14,6 +14,26 @@ import matplotlib.backends.backend_wxagg
import matplotlib.pyplot
import wx
+class Palette:
+ def __init__(self, type='256colors'):
+ if type == '256colors':
+ self.rgblist = numpy.loadtxt('./256-color-rgb.dat')
+
+ def nearest256color(self, rgbval):
+ ibest = -1
+ min_misfit2 = float(inf)
+ for i in range(self.rgblist):
+ palettecolor = self.rgblist[i]
+ misfit2 = (rgbval[0] - float(palettecolor[0]))**2 + \
+ (rgbval[1] - float(palettecolor[1]))**2 + \
+ (rgbval[2] - float(palettecolor[2]))**2
+ if misfit2 < min_misfit2:
+ ibest = i
+ min_misfit2 = misfit2
+ return numpy.array((palettecolor[ibest,0], palettecolor[ibest,1],
+ palettecolor[ibest,2]))
+
+
class CrossStitch:
def __init__(self):