Class: Magick::HatchFill

Inherits:
Object
  • Object
show all
Defined in:
lib/RMagick.rb

Overview

Example fill class. Fills the image with the specified background color, then crosshatches with the specified crosshatch color. See Magick::Draw examples.

Instance Method Summary collapse

Constructor Details

#initialize(bgcolor, hatchcolor = "white", dist = 10) ⇒ HatchFill

Returns a new instance of HatchFill.



1813
1814
1815
1816
1817
# File 'lib/RMagick.rb', line 1813

def initialize(bgcolor, hatchcolor="white", dist=10)
   @bgcolor = bgcolor
   @hatchpixel = Pixel.from_color(hatchcolor)
   @dist = dist
end

Instance Method Details

#fill(img) ⇒ Object

required



1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
# File 'lib/RMagick.rb', line 1819

def fill(img)                # required
   img.background_color = @bgcolor
   img.erase!                # sets image to background color
   pixels = Array.new([img.rows, img.columns].max, @hatchpixel)
   @dist.step((img.columns-1)/@dist*@dist, @dist) { |x|
      img.store_pixels(x,0,1,img.rows,pixels)
   }
   @dist.step((img.rows-1)/@dist*@dist, @dist) { |y|
      img.store_pixels(0,y,img.columns,1,pixels)
   }
end