Module: SwintExec::AsciiToMap

Defined in:
lib/swint_exec/ascii_to_map.rb

Constant Summary collapse

STATE =
{
  'S' => 'start',
  'G' => 'goal',
  '_' => 'free',
  'o' => 'object',
  '#' => 'outside',
  '!' => 'energy'
}

Class Method Summary collapse

Class Method Details

.start(args) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/swint_exec/ascii_to_map.rb', line 20

def AsciiToMap.start(args)
  
  filename = args.first
  lines = File.open(filename).read.split("\n")
  xmldoc = REXML::Document.new
  map = xmldoc.add_element('map')
  
  lines.size.times do |i|
    line = lines[i].strip.split(' ')
    line.size.times do |j|
      map.add_element('field', {'state'=>STATE[line[j]], 'u'=>j, 'v'=>i })
    end
  end
  
  puts xmldoc
  
end