示例#1
0
    def calc_colors(self):
        accent = colors.accent_colors()
        self.render_colors = []
        num_wvls = len(self.wavelengths)
        if num_wvls == 1:
            self.render_colors.append(accent['green'])
        elif num_wvls == 2:
            if self.wavelengths[0] < self.wavelengths[-1]:
                self.render_colors.append(accent['blue'])
                self.render_colors.append(accent['red'])
            else:
                self.render_colors.append(accent['red'])
                self.render_colors.append(accent['blue'])
        elif num_wvls == 3:
            if self.wavelengths[0] < self.wavelengths[-1]:
                self.render_colors.append(accent['blue'])
                self.render_colors.append(accent['green'])
                self.render_colors.append(accent['red'])
            else:
                self.render_colors.append(accent['red'])
                self.render_colors.append(accent['green'])
                self.render_colors.append(accent['blue'])

        else:
            for w in self.wavelengths:
                print("calc_colors", w)
                rgb = srgb.wvl_to_rgb(w)
                print("rgb", rgb)
                self.render_colors.append(rgb)
示例#2
0
    def __init__(self, **kwargs):
        is_dark = kwargs.pop('is_dark', False)
        self._rgb = {
            **colors.accent_colors(is_dark),
            **colors.foreground_background(is_dark)
        }

        super().__init__(**kwargs)

        self.sync_light_or_dark(is_dark, do_refresh=False)
示例#3
0
def light_or_dark(is_dark=True):
    accent = colors.accent_colors(is_dark)
    fb = colors.foreground_background(is_dark)
    rgb = {
        'profile': fb['foreground'],
        'edge': fb['foreground'],
        'ct': accent['blue'],
        'ray': fb['foreground'],
        'rayfan_fill': [254, 197, 254, 64],  # magenta, 25%
        'ax_ray': rgb2mpl([138, 43, 226]),  # blueviolet
        'pr_ray': rgb2mpl([198, 113, 113]),  # sgi salmon
    }
    return {**rgb, **accent, **fb}
示例#4
0
 def sync_light_or_dark(self, is_dark, do_refresh=True):
     self._rgb = {
         **colors.accent_colors(is_dark),
         **colors.foreground_background(is_dark)
     }
     apply_style(is_dark)
     self.set_facecolor(self._rgb['background'])
     if hasattr(self, 'ax'):
         axes = self.ax
         axes.set_facecolor(self._rgb['background1'])
         axes.tick_params(colors=self._rgb['foreground'],
                          grid_color=self._rgb['background'])
     if do_refresh:
         self.refresh()
示例#5
0
def light_or_dark(is_dark=True):
    accent = colors.accent_colors(is_dark)
    fb = colors.foreground_background(is_dark)
    rgb = {
        'node': fb['foreground'],
        'edge': fb['foreground'],
        # 'node': accent['cyan'],
        # 'edge': accent['cyan'],
        'slide': accent['blue'],
        'object_image': accent['magenta'],
        'stop': accent['magenta'],
        'conj_line': accent['orange'],
        'shift': fb['foreground'],
        'barrel': accent['green'],
        }
    return {**rgb, **fb}
示例#6
0
 def calc_colors(self):
     accent = colors.accent_colors()
     self.render_colors = []
     num_wvls = len(self.wavelengths)
     if num_wvls == 1:
         self.render_colors.append(accent['green'])
     elif num_wvls > 1:
         step = 1 if self.wavelengths[0] < self.wavelengths[-1] else -1
         if num_wvls == 2:
             c = ['blue', 'red']
         elif num_wvls == 3:
             c = ['blue', 'green', 'red']
         elif num_wvls == 4:
             c = ['blue', 'green', 'yellow', 'red']
         elif num_wvls == 5:
             c = ['violet', 'cyan', 'green', 'yellow', 'red']
         elif num_wvls == 6:
             c = ['violet', 'cyan', 'green', 'yellow', 'red', 'magenta']
         else:
             c = ['violet', 'blue', 'cyan', 'green', 'yellow',
                  'red', 'magenta']
         self.render_colors = [accent[clr] for clr in c[::step]]