class MagickCanvas::Base
Attributes
center[RW]
image_list[RW]
Public Class Methods
new()
click to toggle source
# File lib/magick_canvas/base.rb, line 13 def initialize self.image_list = ImageList.new self.center = Point.new(width * 0.5, height * 0.5) end
Public Instance Methods
open()
click to toggle source
# File lib/magick_canvas/base.rb, line 18 def open write `hash open > /dev/null 2>&1 && open -a #{app} #{path}` end
radians(degrees)
click to toggle source
# File lib/magick_canvas/base.rb, line 28 def radians(degrees) degrees * Math::PI / 180 end
write()
click to toggle source
# File lib/magick_canvas/base.rb, line 23 def write draw_frames image_list.write(path) end
Private Instance Methods
default_options()
click to toggle source
# File lib/magick_canvas/base.rb, line 47 def default_options { app: 'Safari', width: 300, height: 300, number_of_frames: 1, background_color: 'black', directory: Dir.tmpdir } end
draw(image, frame_count)
click to toggle source
# File lib/magick_canvas/base.rb, line 76 def draw(image, frame_count); end
draw_frames()
click to toggle source
# File lib/magick_canvas/base.rb, line 78 def draw_frames number_of_frames.times do |i| draw(new_image, i) end end
filename()
click to toggle source
# File lib/magick_canvas/base.rb, line 67 def filename extname = gif? ? 'gif' : 'png' "magick_canvas.#{extname}" end
gif?()
click to toggle source
# File lib/magick_canvas/base.rb, line 63 def gif? number_of_frames > 1 end
new_image()
click to toggle source
# File lib/magick_canvas/base.rb, line 58 def new_image bg_color = background_color image_list.new_image(columns, rows) { self.background_color = bg_color } end
options()
click to toggle source
# File lib/magick_canvas/base.rb, line 36 def options {} end
options_with_defaults()
click to toggle source
# File lib/magick_canvas/base.rb, line 40 def options_with_defaults OpenStruct.new(default_options.merge(options)).tap do |merged| merged.columns = merged.width merged.rows = merged.height end end
path()
click to toggle source
# File lib/magick_canvas/base.rb, line 72 def path "#{directory}/#{filename}" end