TurtleBlume/Hilfsfunktion Stängel
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Java</language>
Die Hilfsfunktion Stängel ist dafür verantwortlich einen gebogenen Pflanzenstängel verschiedener Länge zu zeichnen. Ein Startwert gibt die Breite des Stängels beim Start und Endwert die Dicke am Ende an.
'''Wichtig:''' Entwickelt eure Hilfsfunktion in der nachfolgende Codebox. Verwendet die globale Variable <tt>turtle</tt> dafür. Speichert die entgütige Version eurer Lösung in die Wikiseite indem ihr oben auf Bearbeiten klickt. Nur dann kann eure Funktion später verwendet werden.
<code id="Code">
void zeichneStaengel (int color, int length, int start, int end){
// Musterlösung (die eigentlich von Schülern erarbeitet wird)
// Wertebereichprüfung fehlt
double pen = start;
turtle.penWidth((int)(pen));
double w = (double)(start-end) / 50.0;
turtle.penColor((color & 0xFF0000)>> 16,(color & 0x00FF00)>>8,color & 0x0000FF);
double s = length/50.0;
for(int i=0; i < 20; i++){
turtle.forward(s);
turtle.right(1);
pen = pen-w;
turtle.penWidth((int)(pen));
}
for(int i=0; i < 10; i++){
turtle.forward(s);
turtle.right(-2);
pen = pen-w;
turtle.penWidth((int)(pen));
}
for(int i=0; i < 20; i++){
turtle.forward(s);
turtle.right(0.5);
pen = pen-w;
turtle.penWidth((int)(pen));
}
}
</code>
== Schnittstelle ==
Die Hilfsfunktion <tt>zeichneStaengel</tt> soll folgende Parameter und Wertebereiche verarbeiten.
{| border=1
! Parameter !! Wertebereich
|-
| color || 0x000000 bis 0xFFFFFF
|-
| length || 1 bis 500
|-
| start|| 1 bis 20
|-
| end|| 1 bis 20
|}
== Beispiele ==
Hier einige Beispiele wie die Ausgabe eurer Funktion aussehen könnte:
{| border="1"
| [[Bild:Admin_JavaBlume_Stamm1.jpg]] || [[Bild:Admin_JavaBlume_Stamm2.jpg]]|| [[Bild:Admin_JavaBlume_Stamm3.jpg]]
|}
== Testen ==
Testet eure Hilfsfunktion hier ausgiebig:
<eval id="4d071b2e0af2c">
canvas.clear();
turtle.move(250,400);
zeichneStaengel(0x00FF00,100,10,1);
</eval>
<canvas w=500 h=400></canvas>