这是球拍教程的一个例子。
(define (square n)
(filled-rectangle n n))
(define series
(lambda (mk)
(hc-append 4 (mk 5)(mk 10)(mk 20))))
(define (rgb-series mk)
(vc-append
(series (lambda (sz) (colorize (mk sz) "red")))
(series (lambda (sz) (colorize (mk sz) "green")))
(series (lambda (sz) (colorize (mk sz) "blue")))))
(define (rgb-maker mk)
(lambda (sz)
(vc-append (colorize (mk sz) "red")
(colorize (mk sz) "green")
(colorize (mk sz) "blue"))))我认为rgb系列和rgb制造商也在做同样的事情。但是,它们的产出大不相同。

我不知道为什么。有人能解释一下两种功能的区别吗?谢谢
发布于 2018-04-28 13:03:57
区别在于如何应用vc-append和hc-append。
当您使用hc-append创建一行picts时,这些picts是水平排列、中心对齐的。例如:

现在,您可以使用vc-append将三个这样的行堆叠到一个列中,形成以下最后的描述:

这就是在rgb-series中正在发生的事情,根据这种情况,行首先被创建,然后被堆叠成一个列。
另一方面,(series (rgb-maker circle))首先创建一列圆圈,然后将这些列排列成一行,如下所示:

https://stackoverflow.com/questions/50072366
复制相似问题