Sha256: 9af8581c4806ace5081b9ba648e5959020f33ce213d77b896f09f3879be8eaae

Contents?: true

Size: 721 Bytes

Versions: 1

Compression:

Stored size: 721 Bytes

Contents

require 'RMagick'

class GMS
  class Stitcher

    attr_accessor :dir, :output_file

    def initialize(dir, output_file="map.png")
      @dir = dir
      @output_file = output_file
    end

    def tiles
      Dir.glob(File.join(dir,"*")).map do |path|
        Dir.glob(File.join(path,"*.png")).map do |image|
          image
        end
      end
    end

    def process
      output = Magick::ImageList.new

      tiles.each do |row|
        column = Magick::ImageList.new
        row.each do |file|
          puts "Combining #{file}"
          column.push(Magick::Image.read(file).first)
        end
        output.push(column.append(true))
      end
      output.append(false).write(@output_file)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
google-map-stitch-0.1.3 lib/google-map-stitch/stitcher.rb