This post was published 15 years, 4 months ago. Some material it contains may no longer be applicable.
Nachdem im Grid V2 (siehe hier) doch knapp 1000 Änderungen zusammen gekommen sind, hab ich mich entschlossen mich doch früher als geplant an eine Visualisierung zu machen.
Das Resultat ist das hier:
Das Ganze ist größtenteils in Ruby erstellt worden. Habe mit Hilfe von RMagick / ImageMagick zuerstmal das Änderungslog geparst und für jede Änderung ein eigenes Bild erzeugt. Anschließend zusammen schweißen und als Video rauslassen.
Hier der Render in Ruby:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | require 'rubygems' require 'RMagick' f = Magick::Image.new(100,100) { self.background_color = "red" } log = Log.find :all # Ursprungsbild skaliert base = Magick::Image.new(200,200) { self.background_color = "white" } # Jeder Eintrag im Log entsprechenden Pixel verändern # Zusätzlich skaliere ich um 4 damit man auch was erkennt pixels = Array.new(4*4) log.each { |item| if item.new_color.length > 0 s = item.new_color r = s.upcase.slice(0,2).hex g = s.upcase.slice(2,2).hex b = s.upcase.slice(4,2).hex pixels.each_index {|i| pixels[i] = Magick::Pixel.new(r,g,b,0) } base.store_pixels((item.cell.c-1)*4, (item.cell.r-1)*4, 4, 4, pixels) base.write("public/render/#{item.id}.gif") end } |
wow, ist echt cool geworden!