[racket] stuck at operating text from file

From: 김태윤 (kty1104 at gmail.com)
Date: Sun Oct 24 06:18:41 EDT 2010

hello
I am stuck at operating text from file

I am trying to read words from file(map) and do something with the word

in the map file, there are words sort of
a00 a01 a1f, etc
a word consist of 3 part
first "a" is filename of picture (a.png)
second hex number is x coordinate of picture (it will be used for crop)
third hex number is y coordinate of picture (will be used for crop too)

first thing I wonder is that
(crop 0 0 32 32 (bitmap "a.png")) is works but
(bitmap (string->path (string-append (first word) ".png")) doesn't work
(word is sort of a00, a01, a1f, etc)

and the second difficult thing is
#xf or #x1 works but
(crop #x(second (string->list each))
          #x(third (string->list each))
          32 32
          (bitmap "a.png")))
it doesn't working at all

could somebody please help me?
thanks in advanced

here is my messy code
#lang scheme
(require 2htdp/image
         2htdp/universe
         2htdp/batch-io
         racket/gui)
(define sec 1)
(define map-now empty)

(define (make-map [f "map.txt"])
  (define txt-map (read-words/line f))
  (define map-beside empty)
  (define map-whole empty)
  (define (a-tile each)
    (crop (second (string->list each))
          (third (string->list each))
          32 32
          ;(bitmap (string->path (string-append (first each) ".png"))
doesn't work
          (bitmap "a.png")))
  (define (paste-map)
    (for ([line txt-map])
      (if (equal? (first (string->list (first line))) #\;)
          void
          (set! map-whole (above map-whole (for ([each line])
                                             (set! map-beside (beside
map-now (a-tile each)))))))))
  (paste-map))

(set! map-now (make-map))

(define (draw s)
  map-now)
(big-bang sec
          (on-tick add1)
          (on-draw draw))

and map file

;convention -> tile name a~z
;convention -> x coordinate of named tile 0~f
;convention -> y coordinate of named tile 0~f
;grass = a09
;obstacle = a05
;chair = a06
;hexagram = aa8 (width * height = 3*3)
;map size = width * height = 32 * 32
;tile size = 32*32
;map name = town1
;==============================================================================================================================
a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05
a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05
a05 a09 a09 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a09 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a05 a05 a05 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a05 a05 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05
a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a05 a09 a05 a09 a09 a09 a09 a05 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09
a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a05 a09 a05 a09 a09 a09 a09 a05 a09 a09 a09 a05 a05 ac6 a05 a05 a09 a09 a09
a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a05 a09 a09 a09
a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05
a05 a09 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a05 a05
a05 a09 a09 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a05 a09 a09 a09 a09 a09 a09 a09 a05 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09 a09
a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05
a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05 a05
;==============================================================================================
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20101024/e1e53c73/attachment.html>

Posted on the users mailing list.