class ImageMosaic::Operations::Construct
Public Class Methods
new(items, layout: LAYOUT, colour: COLOUR, width: WIDTH)
click to toggle source
# File lib/image_mosaic/operations/construct.rb, line 4 def initialize(items, layout: LAYOUT, colour: COLOUR, width: WIDTH) @items = items @layout = layout @colour = colour @width = width end
Public Instance Methods
parent()
click to toggle source
# File lib/image_mosaic/operations/construct.rb, line 11 def parent @parent ||= Image::Parent.new(layout_items, colour: @colour, width: @width).create end
Private Instance Methods
background()
click to toggle source
# File lib/image_mosaic/operations/construct.rb, line 17 def background @background ||= Data::Background.new(@colour).hex end
layout_items()
click to toggle source
# File lib/image_mosaic/operations/construct.rb, line 21 def layout_items @layout_items ||= layout_klass.new(@items, width: @width).items end
layout_klass()
click to toggle source
# File lib/image_mosaic/operations/construct.rb, line 25 def layout_klass Kernel.const_get("ImageMosaic::Image::Layout::#{@layout.split('_').collect(&:capitalize).join}") end