Article View: comp.lang.scheme.c
Article #159Re: X Graphics Using MIT SCHEME 7.0
From: markf
Date: Thu, 21 Mar 1991 16:47
Date: Thu, 21 Mar 1991 16:47
69 lines
2467 bytes
2467 bytes
There are a set of device independent graphics commands defined in
runtime/graphics.scm. When you make a graphics device you pass in a
specific graphics device type. MIT Scheme currently supports starbase
graphics (an HP creation) and X window graphics. For X window
graphics you should use the x-graphics-device-type wich is defined in
runtime/x11graph.scm. Here is a very simple graphics package which
shows the use of some of the graphics stuff.
-Mark
;;;; Simple graphics Interface
;;;; implemented for X Windows
(define clear-graphics)
(define clear-point)
(define draw-line-to)
(define draw-point)
(define graphics-available?)
(define graphics-text)
(define init-graphics)
(define position-pen)
(define graphics-package
(make-environment
(define graphics-device #F)
(set! clear-graphics
(lambda ()
(if (not graphics-device)
(init-graphics))
(graphics-clear graphics-device)
(graphics-move-cursor graphics-device 0 0)))
(set! clear-point
(lambda (x y)
(graphics-erase-point graphics-device x y)))
(set! draw-line-to
(lambda (x y)
(graphics-drag-cursor graphics-device x y)))
(set! draw-point
(lambda (x y)
(graphics-draw-point graphics-device x y)))
(set! graphics-available?
(lambda ()
(graphics-type-available? x-graphics-device-type)))
(set! graphics-text
(lambda (text x y)
;; Accepts different parameters on Chipmunks.
(graphics-draw-text graphics-device x y text)))
(set! init-graphics
(lambda ()
(let ((display (x-open-display #f)))
(set! graphics-device
(make-graphics-device x-graphics-device-type
display "512x388" #f)))
(graphics-set-coordinate-limits graphics-device -256 -195 255 194)
(graphics-move-cursor graphics-device 0 0)))
(set! position-pen
(lambda (x y)
(graphics-move-cursor graphics-device x y)))
))
Technical Details
Message-ID:
<9103211731.AA26595@bloom-beacon.MIT.EDU>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!think.com!snorkelwacker.mit.edu!bloom-beacon!dont-send-mail-to-path-linesReferences:
<2449@borg.cs.unc.edu>Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.scheme.c Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!think.com!snorkelwacker.mit.edu!bloom-beacon!dont-send-mail-to-path-lines From: markf@altdorf.ai.mit.EDU Subject: Re: X Graphics Using MIT SCHEME 7.0 Message-ID: <9103211731.AA26595@bloom-beacon.MIT.EDU> Sender: daemon@athena.mit.edu (Mr Background) Reply-To: markf@zurich.ai.mit.edu Organization: The Internet References: <2449@borg.cs.unc.edu> Date: 21 Mar 91 16:47:57 GMT Lines: 69