输出是艺术。
但它的源代码呢?
它同样是抽象的。
这个比赛是完全可以选择的!
参赛作品的截止时间是 4 月 27 日(星期三)晚上 11:59 。
以下是参加比赛的步骤:
abstract_turtle.zip
文件。然后,将该文件解压到你的 scheme_contest
目录中。解压后的文件夹应该包含 canvas.py
和 color_names.py
等文件。另外,如果你喜欢用 pip
命令来安装,你可以运行 pip3 install abstract-turtle
,而不是下载这个 zip 文件。contest.scm
文件(你可以用 python3 scheme contest.scm --pillow-turtle --turtle-save-path output
输出来渲染你的绘图)。关于绘图程序的描述,请参见 Scheme 内置参考资料中的图形 。
python3 scheme contest.scm --turtle-save-path output
来代替。主要的区别是这个命令使用的是 tkinter
库,而前一个命令使用的是 pillow
库。两者应该产生相同的输出。output.png
。在 contest.scm
中, draw
程序应该绘制你的作品,然后在点击时退出。
所有参赛作品,包括它们的源代码,都将分发给你的同学进行投票。 请不要在你提交的作品中包含个人信息。
在这次比赛中,你可以和另外一个伙伴一起工作。你应该在 Ok 上添加你的伙伴,并进行一次提交。
重要提示: 当你准备提交时, 请遵循以下两个步骤 :
- 运行
python3 ok --submit
将你的contest.scm
文件提交给 Ok 。- 填写 竞赛表格 。确保这里的信息是正确的,因为我们将用它来生成你在 Scheme 艺术画廊的作品。
故障排除: 当你试图渲染你的作品时,你是否遇到了错误
name 'builtins' is not defined
?如果是,请在scheme_builtins.py
的顶部添加以下一行:import builtins
。当你试图渲染你的图片时,你可能还会被要求安装一些依赖项,如果你这样做了,它应该能正确地创建你的可视化。如果你没有看到这个错误(通常是对部分 Windows 用户弹出),你不需要添加额外的导入。
使用海龟图形创建一个你选择的迭代或递归过程的可视化。你的实现必须完全用 Scheme 编写,并使用你所建立的解释器。所有的计算都必须在 Scheme 中完成。
我们将有两类参赛作品:
任何一个 token 都不得包含超过 50 个字符。 如果您的作品需要比重量级类别所允许的更多代价,请联系课程工作人员,以获得提交更长作品的特别许可。 较长的作品,如果得到批准,将在画廊中展示,但没有资格在艺术竞赛中获得额外分数。
额外分数将按以下方式授予:
你可以通过运行以下命令来检查名为 contest.scm
的 Scheme 文件中的代价数量:
python3 scheme_tokens.py contest.scm
参赛作品(代码和图片)将被张贴在网上,获奖者将由大众投票选出。投票结束后,每个类别的前三名作品将在 Piazza 上公布。
为了提高你的成功机会,我们欢迎你在作品的评论中加入标题和描述性的 俳句 ,这将包括在投票中。
在提交之前,请确保你的作品遵守这些准则:
我们保留取消任何不遵守这些准则的作品的资格的权利。
为了获得灵感,你可以浏览一下这些过去的参赛作品的画廊。请注意,某些作品可能不符合当前的准则。