xturtle Ampel

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
HLK
User
Beiträge: 2
Registriert: Mittwoch 6. Februar 2008, 17:44

Donnerstag 7. Februar 2008, 16:43

Hallo,

ich habe eine Frage... also mein zeil ist es eine Ampel mit xturtle zu zeichen und zwar so das die farben immer wechseln...
also erstmal der code:

Code: Alles auswählen

 print('Bitte geben Sie dir groeße der Ampel ein. Vorschlag 20-120')
eingabe = input('groeße: ')
speed(5)
hideturtle()

def kasten(groese,farbe):
    fillcolor(farbe)
    fill("true")
    width(groese/20.0)
    left(90)
    forward(groese)
    width(groese/40.0)
    right(90)
    forward(groese/5.0)
    left(90)
    forward(groese)
    left(90)
    forward(groese/2.5)
    left(90)
    forward(groese)
    left(90)
    forward(groese/5.0)
    fill("false")

kasten(eingabe,"darkgrey")

def lampe(groese,farbe):
    fillcolor(farbe)
    fill("true")
    up()
    left(90)
    forward(groese/14.0)
    right(90)
    down()
    circle(groese/8.0)
    circle(groese/8.0,180)
    right(180)
    fill("false")
    
lampe(eingabe,"green")
lampe(eingabe,"yellow")
lampe(eingabe,"red")
das habe ich bisher... funktioniert auch wunderbar und ist so wie ich es haben will...

und jetzt würde ich gerne wissen wie ich es hinkriege das immer nur eine farbe "an" ist. Und dann halt noch so das es immer Von Rot zu Gelb zu Grün wechselt und wieder zurück.

wäre nett wenn ihr mir helfen könntet.

mfg
HLK
HLK
User
Beiträge: 2
Registriert: Mittwoch 6. Februar 2008, 17:44

Donnerstag 7. Februar 2008, 21:50

kann mir da niemand helfen?

mir ist da grade ne idee gekommen aber ka wie die richtigen befehle sind...

und zwar: nach jedem lampe(eingabe,"farbe") den punkt wo er ist speichern und dann muss man doch dorthin wieder "zurückspringen" können und dann die füllung wieder weg oder auch wider hin machen können... dafür bräuchte ich nur die passenden befehle. den rest würde ich glaub dann hinkriegen mit ein wenig rumprobiererei xD

also... jemand ne ahnung?
Gnushi
User
Beiträge: 77
Registriert: Dienstag 12. Dezember 2006, 09:49

Donnerstag 7. Februar 2008, 22:30

Hallo!
HLK hat geschrieben:also... jemand ne ahnung?
Du könntest Dir einige Funktionen schreiben, die so aussehen:
* zeichne_lampe_rot_an(...)
* zeichne_lampe_rot_aus(...)
* zeichne_lampe_gelb_an(...)
... usw.

und dann aufrufen:

zeichne_alle_aus()
pause
zeichne_rot_an()
pause
zeichne_rot_aus()
zeichne_gelb an()
pause
.... usw

Gnushi
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Freitag 8. Februar 2008, 09:58

Hallo,

das mit dem Speichern würde schon gehen. Aber soweit ich weiß hat xturtle keine Funktion um die Turtle an eine spezielle Stelle springen zu lassen.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Freitag 8. Februar 2008, 12:16

Imperator hat geschrieben:das mit dem Speichern würde schon gehen. Aber soweit ich weiß hat xturtle keine Funktion um die Turtle an eine spezielle Stelle springen zu lassen.
Patch schreiben oder Monkeypatchen.

Alternativ sollte es moeglich sein in der Turtle den Stift abzusetzen und irgendwohin zu fahren und dort den Stift wieder aufzusetzen. Ist in Logo-inspirierten Turtles oft moeglich.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
BlackJack

Freitag 8. Februar 2008, 13:01

Also muss man in der Funktion, die eine "Lampe" zeichnet, dafür sorgen, dass die Schildkröte nach der Ausführung wieder an dem Punkt steht, an dem sie vorher war.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Freitag 8. Februar 2008, 13:04

Leonidas hat geschrieben:
Imperator hat geschrieben:das mit dem Speichern würde schon gehen. Aber soweit ich weiß hat xturtle keine Funktion um die Turtle an eine spezielle Stelle springen zu lassen.
Patch schreiben oder Monkeypatchen.

Alternativ sollte es moeglich sein in der Turtle den Stift abzusetzen und irgendwohin zu fahren und dort den Stift wieder aufzusetzen. Ist in Logo-inspirierten Turtles oft moeglich.
Das mit dem Stift absetzen geht. Und ich habe jetzt nochmal in Python für Kids nachgesehen. Man kann sie schon zu einer bestimmten Position springen lassen. Mit goto(x, y).
Antworten