def make_gradient(palette, num_segments, num_colors): gradient = Gimp.gradient_new(palette) if (num_segments > 1): Gimp.gradient_segment_range_split_uniform(gradient, 0, -1, num_segments) for color_number in range(0, num_segments): if color_number == num_colors - 1: color_number_next = 0 else: color_number_next = color_number + 1 _, color_left = Gimp.palette_entry_get_color(palette, color_number) _, color_right = Gimp.palette_entry_get_color(palette, color_number_next) Gimp.gradient_segment_set_left_color(gradient, color_number, color_left, 100.0) Gimp.gradient_segment_set_right_color(gradient, color_number, color_right, 100.0) Gimp.context_set_gradient(gradient) retval = [ Gimp.param_from_status(Gimp.PDBStatusType.SUCCESS), Gimp.param_from_string(gradient) ] return len(retval), retval
def make_gradient(palette, num_segments, num_colors): gradient = Gimp.gradient_new(palette) if (num_segments > 1): Gimp.gradient_segment_range_split_uniform(gradient, 0, -1, num_segments) for color_number in range(0, num_segments): if color_number == num_colors - 1: color_number_next = 0 else: color_number_next = color_number + 1 _, color_left = Gimp.palette_entry_get_color(palette, color_number) _, color_right = Gimp.palette_entry_get_color(palette, color_number_next) Gimp.gradient_segment_set_left_color(gradient, color_number, color_left, 100.0) Gimp.gradient_segment_set_right_color(gradient, color_number, color_right, 100.0) Gimp.context_set_gradient(gradient) return gradient