Seite 1 von 1

turtlegrafik

Verfasst: Sonntag 10. Mai 2015, 11:27
von haeuslermartin
Hallo Experten,

soweit ich es checke, gibts für die Linie mit der turtle nur den Befehl forward und die Winkelangabe: fd(29), left(39), -(goto ist ja immer absolut)

es wäre doch äußerst praktisch, wenn man eine line direkt vom letzten Punkt aus mit x und y Werten angeben könnte, wie z. B.
forward mit zwei Argumenten fd(30,-40), Zielpunkt also 30px vorwärts und 40px nach unten, -der Winkel ergibt sich von selbst-, kaum zu glauben, dass es sowas einfaches nicht gibt, oder habe ich da was übersehen? :?:

Re: turtlegrafik

Verfasst: Sonntag 10. Mai 2015, 12:37
von nezzcarth
Man muss vielleicht bedenken, dass dem Turtle-Modul ein pädagogischer Anspruch zugrunde liegt; da geht es weniger um ein ausgefeiltes Zeichenpaket.

Solche Lehrsprachen haben nicht selten den Ansatz, dass bestimmte Dinge bewusst nicht implementiert sind, um Konzepte wie Funktionen/Prozeduren nahezulegen. Entsprechend kannst du es ja einfach selbst implementieren ;)

Re: turtlegrafik

Verfasst: Sonntag 10. Mai 2015, 13:01
von haeuslermartin
ja, aber ich denke, eine Linie von Punkt zu Punkt zu ziehen, ist elementarer, als mit Winkeln zu arbeiten, auch im Hinblick auf spätere
3-D Modellierungen ..
ich muß leider zugeben, dass meine Kenntnisse nicht reichen um in eine Programmiersprache selbst etwas zu implementieren,
oder meinst Du eine Funktion schreiben? :K

Re: turtlegrafik

Verfasst: Sonntag 10. Mai 2015, 15:26
von haeuslermartin
es ist scheinbar nicht möglich, mit der turtle eine Linie von dem Punkt, an dem sie sich gerade befindet, zu einem nach y versetztem Punkt zu machen, ohne einen Winkel angeben zu müssen ... :roll:
die Koordinaten wären ja bekannt ...

Re: turtlegrafik

Verfasst: Sonntag 10. Mai 2015, 16:32
von gerpark
ganz so schlimm ist es ja nun nicht.
Vektorgrafik ist eine feine Sache,
aber Du kannst natürlich auch mit Koordinaten arbeiten.
Mit ycor() erhälst du den Y-Wert und mit sety(y)
setzt Du den neuen Wert.
Derjenige, der die Turtle Grafik entwickelt hat,
hat auch eine deutsche Dokumentation zu den Befehlen geschrieben,
vielleicht schaust Du da mal rein :wink:
http://python4kids.net/downloads.html

Re: turtlegrafik

Verfasst: Montag 11. Mai 2015, 10:58
von nezzcarth
haeuslermartin hat geschrieben: ich muß leider zugeben, dass meine Kenntnisse nicht reichen um in eine Programmiersprache selbst etwas zu implementieren,
oder meinst Du eine Funktion schreiben? :K
Ja, so war das gemeint.

Wenn ich dich richtig verstanden habe, suchst du soetwas:

Code: Alles auswählen

def fd_xy(x,y):
    current_x, current_y = turtle.position()
    turtle.setpos(current_x+x, current_y+y)
(Nachteil: Die (optische) Ausrichtung der Schildkröte stimmt nicht, hat aber auch keinen Einfluss.)

Re: turtlegrafik

Verfasst: Montag 11. Mai 2015, 11:41
von haeuslermartin
danke,
hab's kurz ausprobiert mit current - werten 0 nach x=20 und y= 40, bekomme aber Fehlermelung 'turtle is not defined'
was habe ich falsch gemacht? :?:

>>> def fd_xy(x,y):
current_x, current_y = turtle.position(0,0)
turtle.setpos(current_x+x, current_y+y)


>>> fd_xy(20,40)
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
fd_xy(20,40)
File "<pyshell#8>", line 2, in fd_xy
current_x, current_y = turtle.position(0,0)
NameError: name 'turtle' is not defined

:?

Re: turtlegrafik

Verfasst: Montag 11. Mai 2015, 12:02
von BlackJack
@haeuslermartin: Wenn man das `turtle`-Modul benutzen möchte, dann muss man das natürlich auch importieren. :roll: