Class: Monet::ColorBlend
- Inherits:
-
DiffStrategy
- Object
- DiffStrategy
- Monet::ColorBlend
- Defined in:
- lib/monet/diff_strategy.rb
Instance Attribute Summary
Attributes inherited from DiffStrategy
Instance Method Summary collapse
- #calculate_for_pixel(pixel, x, y) ⇒ Object
-
#initialize(base_image, diff_image) ⇒ ColorBlend
constructor
A new instance of ColorBlend.
Methods inherited from DiffStrategy
Constructor Details
#initialize(base_image, diff_image) ⇒ ColorBlend
58 59 60 61 |
# File 'lib/monet/diff_strategy.rb', line 58 def initialize(base_image, diff_image) super @output = ChunkyPNG::Image.new(base_image.width, base_image.height, BLACK) end |
Instance Method Details
#calculate_for_pixel(pixel, x, y) ⇒ Object
63 64 65 66 67 68 69 70 |
# File 'lib/monet/diff_strategy.rb', line 63 def calculate_for_pixel(pixel, x, y) rgb_colors = %w(r g b).map do |color| for_color(color, pixel) + for_color(color, @diff_image[x,y]) - 2 * [for_color(color, pixel), for_color(color, @diff_image[x,y])].min end @output[x,y] = rgb(*rgb_colors) super end |