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)
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)
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}
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()
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}
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]]