GridV2 Visualisierung

This post was published 14 years, 7 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
}

One thought on “GridV2 Visualisierung

Leave a Reply

Your email address will not be published. Required fields are marked *