Example #1
0
    def _transform_brush_color(self):
        """ Apply eotf transform to the backend color.

        By only applying the transform here, the issue of
        strokemap and brush color consistency between new
        and old color rendering modes does not arise.
        """
        hsv_orig = (self.brushinfo.get_base_value(k) for k in self.HSV_CNAMES)
        h, s, v = helpers.transform_hsv(hsv_orig, eotf())
        settings_dict = brushsettings.settings_dict
        self.set_base_value(settings_dict['color_h'].index, h)
        self.set_base_value(settings_dict['color_s'].index, s)
        self.set_base_value(settings_dict['color_v'].index, v)
Example #2
0
 def brush_string_inverted_eotf(brush_string):
     try:
         brush = json.loads(brush_string)
         bsett = brush['settings']
         k = 'base_value'
         hsv = bsett['color_h'][k], bsett['color_s'][k], bsett['color_v'][k]
         h, s, v = helpers.transform_hsv(hsv, 1.0 / 2.2)
         bsett['color_h'][k] = h
         bsett['color_s'][k] = s
         bsett['color_v'][k] = v
         return json.dumps(brush)
     except Exception:
         logger.exception("Failed to invert color in brush string")
         return brush_string