2008-11-18 14 views
5

Poszukuję implementacji języka programowania LOGO, który obsługuje "dynaturtles" - animowane żółwie, które mogą programowo zmieniać kształt, prędkość i kierunek, a także wykrywać kolizje między sobą lub innymi obiektami w środowisku.Czy są jakieś implementacje LOGO open source/free, które obsługują dynaturtles?

Z powrotem w mgle czasu, kiedy ziemia była nowa, a 8-bitowe mikrowie rządziły najwyższymi, Atari LOGO zrobił to doskonale. Można było stworzyć różnego rodzaju małe gry i symulowane środowiska, korzystając z tej techniki bardzo łatwo, ponieważ implementacja języka miała bardzo dobrze przemyślaną, elegancką składnię.

Wiem o LCSI z Microworlds, ale szukam czegoś, co pomoże mi zdobyć przyjaciół i ich dzieci zaangażowanych w programowanie bez przerywania mojego budżetu.

Odpowiedz

2

Kopiąc trochę przez Internet, znalazłem OpenStarLogo. Chociaż nie wspominają o "dynaturtlach", dokumenty wspominają o wykryciu kolizji. Witryna ma pliki do pobrania z kodem i dokumentacją.

Z tego wikipedia article, w sekcji Wdrożenia, znajduje się plik PDF zawierający informacje o aktualnych i zabytkowych implementacjach. Niektóre z nich, takie jak StarLogo TNG i Elica, mają obsługę obiektów 3D. To zdecydowanie nie są programy LOGO, które napisałem jako dziecko ...

+0

StarLOGO robi dokładnie to, co chcę, jeśli chodzi o umożliwienie mi określić żółwia „obiekty”, przenieść je na całym ekranie, a wykryć collisisions między nimi. StarLOGO korzystało z równoległego wsparcia, które było fajne, ale było uproszczone w stosunku do simów i nie miało solidnej obsługi 3D TNG. – feoh

0

Sprawdź pakiet żółwia python. Jest w standardowej dystrybucji Pythona i obsługuje graficzny interfejs żółwia.

0

Jeśli używasz Win-logo (www.win-logo.de/eng/e_index.htm; musisz się zarejestrować, a następnie możesz wypróbować przez 30 dni), możesz przećwiczyć ten kod (niemiecka wersja 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 

OK? Pozdrowienia. Michael Kraus

0

Dwa dodatki do mojego postu z wczoraj, dotyczące procedur z logo-dynaturtle:

1.) Klawisz "d" jest NUM 4

klawisz "e" jest NUM 5

klawisz "f" NUM 6

klawisz "H" jest NUM 8

2.) Po wciśnięciu klawisza "e" = ilość 5 zatrzymać rekurencyjnych procedur również trzeba kliknij przycisk wyjścia. - Próbowałem dowiedzieć się dlaczego, ale nie mam pojęcia.

Michael Kraus