【问题标题】:Are there any open source/free LOGO implementations that support dynaturtles? [closed]是否有任何支持 dynaturtles 的开源/免费 LOGO 实现? [关闭]
【发布时间】:2010-09-22 21:29:30
【问题描述】:

我正在寻找支持“dynaturtles”的 LOGO 编程语言的实现 - 可以以编程方式改变形状、速度和方向以及检测彼此或环境中其他对象的碰撞的动画海龟。

回到地球是新的和 8 位微型统治至高无上的时代的迷雾中,Atari LOGO 在这方面做得非常出色。使用这种技术可以非常轻松地创建各种小型游戏和模拟环境,因为该语言的实现具有经过深思熟虑的优雅语法。

我知道 LCSI 的 Microworlds,但我正在寻找可以在不超出预算的情况下让一些朋友和他们的孩子参与编程的东西。

【问题讨论】:

    标签: open-source turtle-graphics logo-lang


    【解决方案1】:

    在网上搜索了一下,我找到了OpenStarLogo。尽管他们没有特别提到“dynaturtles”,但文档确实提到了碰撞检测。该站点有代码和文档下载。

    来自wikipedia article,在实施部分下,有一个 PDF 列出了已知的当前和古老的实施。其中一些,例如StarLogo TNG 和Elica 支持3D 对象。这些绝对不像我小时候写的LOGO程序……

    【讨论】:

    • StarLOGO 在允许我定义海龟“对象”、在屏幕上移动它们以及检测它们之间的碰撞方面完全符合我的要求。 StarLOGO 曾经有很酷的并行支持,但它针对 sims 进行了精简,似乎没有 TNG 提供的强大的 3D 支持。
    【解决方案2】:

    我使用microworlds 作为我的标志...我知道 kturtle 用于 kde kturtle 我还发现了一些可能很有趣的链接
    python turtle
    fmslogo
    MSWlogo

    【讨论】:

      【解决方案3】:

      查看海龟 python 包。它在标准 python 发行版中,支持图形海龟界面。

      【讨论】:

        【解决方案4】:

        如果你使用win-logo(www.win-logo.de/eng/e_index.htm;你必须注册然后你可以尝试30天),你可以练习这个代码(德文版本Nr.2):

        PR test
           ;* #####  Startdatei  ######
           SETZE "sprung.x" 0
           SETZE "sprung.y" 0
           flug
        ENDE
        
        PR flug
           sprung
           tasten
           flug
        ENDE
        
        PR sprung
           SETZE "sprung.x" :sprung.x + (SIN KURS)/2
           SETZE "sprung.y" :sprung.y + (COS KURS)/2
           AUFXY (XKO + :sprung.x) (YKO + :sprung.y)
        ENDE
        
        PR tasten
           SETZE "t" TASTE
           WENN :t = "d" DANN LI 30
           WENN :t = "e" DANN DZ "Abbruch!" AUSSTIEG
           WENN :t = "f" DANN RE 30
           WENN :t = "h" DANN sprung
           tasten
        ENDE
        

        好吗? 你好。迈克尔·克劳斯

        【讨论】:

          【解决方案5】:

          我昨天的帖子中添加了两个关于 dynaturtle 的 LOGO 程序:

          1.) 键“d”是 NUM 4

          键“e”是 NUM 5

          键“f”是数字 6

          键“h”是数字 8

          2.) 在点击“e”=NUM 5 以停止递归过程后,您还必须单击退出按钮。 - 我试图找出原因,但我不知道。

          迈克尔·克劳斯

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2011-06-18
            • 1970-01-01
            • 1970-01-01
            • 2023-03-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多