;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; either design small format pages for macs and pc's or
; large format pages for workstations
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define *small-pages* ())
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; PAGE - spit out a single html page
;
; up, right, etc are either null if can't go that way, or the
; address of the page to jump to.
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define (page name image up right down left ccw cw)
(begin
; if generating small pages, prefix everything with a "sm"
(if *small-pages*
(begin
(set! name (string-append "sm" name))
(set! image (string-append "sm" image))
(if up (set! up (string-append "sm" up)))
(if right (set! right (string-append "sm" right)))
(if down (set! down (string-append "sm" down)))
(if left (set! left (string-append "sm" left)))
(set! ccw (string-append "sm" ccw))
(set! cw (string-append "sm" cw))
))
(set! image (string-append "Images/" image))
(define file (fopen (string-append name ".html") "w"))
; title and background
(fwrite (string-append "<title>" name "</title>\n") file)
(fwrite "<body bgcolor=\"#000000\" text=\"#F0F0F0\">\n" file)
; stick the main image in
(fwrite (string-append "<center><img border=0 vspace=20 src=\""
image
"\"><p></center>\n")
file)
(if *small-pages*
(begin
; top row: spacer and up arrow
(fwrite "<img src=\"smspacer.gif\">\n" file)
(if up
(fwrite (string-append
"<a href=" up
"><img border=0 src=\"smup.gif\"></a><p>\n")
file)
(fwrite "<img src=\"smblurup.gif\"><p>\n" file))
; middle row, left and right arrows, and rotation arrows
(if left
(fwrite (string-append
"<a href=" left
"><img border=0 src=\"smleft.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"smblurleft.gif\">" file))
(if right
(fwrite (string-append
"<a href=" right
"><img border=0 src=\"smright.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"smblurright.gif\">\n" file))
(fwrite "<img border=0 src=\"smwidespacer.gif\">\n" file)
(if ccw
(fwrite (string-append
"<a href=" ccw
"><img border=0 src=\"smccw.gif\"></a>\n")
file)
(fwrite "<img src=\"smblurccw.gif\">\n" file))
(if cw
(fwrite (string-append
"<a href=" cw
"><img border=0 src=\"smcw.gif\"><p></a>\n")
file)
(fwrite "<img src=\"smblurcw.gif\"><p>\n" file))
; bottom row: spacer, down arrow and link to title page
(fwrite "<img src=\"smspacer.gif\">\n" file)
(if down
(fwrite (string-append
"<a href=" down
"><img border=0 src=\"smdown.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"smblurdown.gif\">\n" file))
(fwrite "<a href=\"smtitle.html\"><img align=right border=0 src=\"smfadetitle.gif\"></a><p>\n" file)
)
(begin
; top row: spacer and up arrow
(fwrite "<img src=\"spacer.gif\">\n" file)
(if up
(fwrite (string-append
"<a href=" up
"><img border=0 src=\"up.gif\"></a><p>\n")
file)
(fwrite "<img src=\"blurup.gif\"><p>\n" file))
; middle row, left and right arrows, and rotation arrows
(if left
(fwrite (string-append
"<a href=" left
"><img border=0 src=\"left.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"blurleft.gif\">" file))
(if right
(fwrite (string-append
"<a href=" right
"><img border=0 src=\"right.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"blurright.gif\">\n" file))
(fwrite "<img border=0 src=\"widespacer.gif\">\n" file)
(if ccw
(fwrite (string-append
"<a href=" ccw
"><img border=0 src=\"ccw.gif\"></a>\n")
file)
(fwrite "<img src=\"blurccw.gif\">\n" file))
(if cw
(fwrite (string-append
"<a href=" cw
"><img border=0 src=\"cw.gif\"></a><p>\n")
file)
(fwrite "<img src=\"blurcw.gif\"><p>\n" file))
; bottom row: spacer, down arrow and link to title page
(fwrite "<img src=\"spacer.gif\">\n" file)
(if down
(fwrite (string-append
"<a href=" down
"><img border=0 src=\"down.gif\"></a>\n")
file)
(fwrite "<img border=0 src=\"blurdown.gif\">\n" file))
(fwrite "<a href=\"title.html\"><img align=right border=0 src=\"fadetitle.gif\"></a><p>\n" file)
))
(fclose file)
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 13 west image only pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 1 13 1
(define name "westImage")
(page (string-append name (number->string i))
(string-append "f" (number->string i) ".jpg")
()
(if (<> i 13)
(string-append name (number->string (+ i 1)) ".html") ())
(string-append "west" (number->string (+ i 2)) ".html")
(if (<> i 1)
(string-append name (number->string (- i 1)) ".html") ())
(string-append "south" (number->string (+ i 2)) ".html")
(string-append "north" (number->string (+ i 2)) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 1 north image only page
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define name "NorthImage")
(page "northImage14"
"f14.jpg"
()
()
"north15.html"
()
"west15.html"
"east15.html"
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 14 east image only pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 15 28 1
(define name "eastImage")
(page (string-append name (number->string i))
(string-append "f" (number->string i) ".jpg")
()
(if (<> i 28)
(string-append name (number->string (+ i 1)) ".html") ())
(string-append "east" (number->string (- 16 (- i 14))) ".html")
(if (<> i 15)
(string-append name (number->string (- i 1)) ".html") ())
(string-append "north" (number->string (- 16 (- i 14))) ".html")
(string-append "south" (number->string (- 16 (- i 14))) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 15 west pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 1 15 1
(define name "west")
(page (string-append name (number->string i))
(string-append "west" (number->string i) ".jpg")
(if (> i 2)
(string-append "westImage" (number->string (- i 2)) ".html") ())
(if (<> i 15)
(string-append "west" (number->string (+ i 1)) ".html") ())
()
(if (<> i 1)
(string-append "west" (number->string (- i 1)) ".html")
"title.html")
(string-append "south" (number->string i) ".html")
(string-append "north" (number->string i) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 15 east pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 1 15 1
(define name "east")
(page (string-append name (number->string i))
(string-append "east" (number->string i) ".jpg")
(if (> i 1)
(string-append "eastImage" (number->string (+ 14 (- 16 i)))
".html") ())
(if (> i 1)
(string-append "east" (number->string (- i 1)) ".html")
"title.html")
()
(if (< i 15)
(string-append "east" (number->string (+ i 1)) ".html") ())
(string-append "north" (number->string i) ".html")
(string-append "south" (number->string i) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 15 north pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 1 15 1
(define name "north")
(page (string-append name (number->string i))
(string-append "north" (number->string i) ".jpg")
(if (<> i 15)
(string-append "north" (number->string (+ i 1)) ".html")
"northImage14.html")
()
(if (> i 1)
(string-append "north" (number->string (- i 1)) ".html")
"title.html")
()
(string-append "west" (number->string i) ".html")
(string-append "east" (number->string i) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; generate 15 south pages
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(for i 1 15 1
(define name "south")
(page (string-append name (number->string i))
(string-append "south" (number->string i) ".jpg")
(if (<> i 1)
(string-append "south" (number->string (- i 1)) ".html")
"title.html")
()
(if (< i 15)
(string-append "south" (number->string (+ i 1)) ".html") ())
()
(string-append "east" (number->string i) ".html")
(string-append "west" (number->string i) ".html")
)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;