Sha256: 0535cde20f987049dbe58cfd156ea8066d47851642d85994b9de4281aa9cd05a

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.2 lib/google-map-stitch/stitcher.rb