用MIT方案绘制图形

时间:2012-11-01 01:46:28

标签: scheme mit-scheme

我希望使用MIT方案以图形方式绘制函数。在方案手册中,有一个名为“图形”的部分 - 引用:

MIT Scheme has a simple two-dimensional line-graphics interface that is 
suitable for many graphics application.

如果您遇到过这种情况,请通过粘贴适用于麻省理工学院/计划的最小工作代码(KISS原则)帮助我,并绘制一些东西。

4 个答案:

答案 0 :(得分:6)

看起来this手册包含每个函数的文档,但是在线的任何文档中似乎都没有完整的每个函数示例。我能够找到工作代码的唯一方法是向Google提供实际的函数名称,并仔细查看每个结果以获取可能的代码示例。

无论如何,为了满足你的问题并给你一个关于这个库如何工作的简单例子,这里是示例代码。

    (let ((device (make-graphics-device (car (enumerate-graphics-types))))
          (x-start 0)
          (y-start 0)
          (x-end 5)
          (y-end 5))
      (graphics-draw-line device x-start y-start x-end y-end)
      (graphics-close device))

如果您需要更多样品,请告诉我,但代码和文档应足以让您前进。

答案 1 :(得分:5)

我想补充说seisvelas(1/11/12)给出的代码虽然正确,但在我的64位Linux系统上不起作用。
(按照alinsoar的观察编辑) 这是因为窗口在let的范围内被关闭,所以它实际上有效,但它发生得太快而无法观察。

试试这样:

(define device (make-graphics-device (car (enumerate-graphics-types))))
(graphics-draw-line device 0 0 5 5)
;; when you're good and ready
(graphics-close device)

答案 2 :(得分:2)

Mac OSX用户需要注意的一点是,您需要安装并启动XQuartz,否则(enumerate-graphics-types)将始终为空。

答案 3 :(得分:0)

我正在为Windows用户制作一个绘图工具source

它刚刚从mit-scheme中的“graphics”提供的原语构建,但允许你绘制函数和向量字段。