Hi Kashyap,
> Rendering graphics is a requirement that I keep running into. While
> HTML5/Canvas is perhaps the most portable way to render graphics today but
> you have to submit to the restrictions imposed by Javascript in a browser
I do a lot of canvas stuff in PicoLis (not much published though). But there are
some articles in picolisp.com, just enter "canvas" in the search field.
@lib/canvas.l allows you to write graphics completely in Lisp, and I use it also
in some applications together with @lib/gis.l and OpenStreetMap. For a very
simple demo, you can try the attached example.
☺/ A!ex
# 09oct18abu
# (c) Software Lab. Alexander Burger
(allowed ()
"!home" "@lib.css" )
(scl 6)
(load
"@lib/http.l" "@lib/xhtml.l" "@lib/form.l"
"@lib/math.l" "@lib/gis.l" )
(symbols '(pico gis))
(setq *Osm (cons))
(de home ()
(and (app) *Port% (redirect (baseHRef) *SesId *Url))
(action
(html 0 "OpenLayers" "@lib.css" NIL
(form NIL
(<osm> 138.490790 190.849132 19
'((Lat Lon) # Click
(msg (cons Lat Lon)) ) )
(<poi> 138.490790 190.849132
"@img/go.png" "0.1" "1.0"
"NW-Ecke" -20 "black"
"http://software-lab.de"
'((Txt Lat Lon) # Drag
(set> (: txt) Txt)
(set> (: lat) Lat)
(set> (: lon) Lon) ) )
(<poi> 138.490744 190.849328
"@img/go.png" "0.1" "1.0"
"SE-Ecke" -20 "black" )
(<poi> 138.491698 190.852213
"@img/go.png" "0.1" "1.0"
"Sonnenstraße" -20 "black" )
(<line> "red"
138.490790 190.849132
138.490744 190.849328 )
(--)
(gui 'txt '(+Lock +TextField) 11)
(gui 'lat '(+Lock +LatField) 11)
(gui 'lon '(+Lock +LonField) 11) ) ) ) )
(de main ()
(symbols '(pico gis)) )
(de go ()
(server 8080 "!home") )
# vi:et:ts=3:sw=3