Arduino + TFT--> sköldpadda grafik (9 / 18 steg)
Steg 9: Att skriva din egen sköldpadda grafikfunktioner.
När du skriver egna funktioner måste de refererar till objektet sköldpadda i funktionsdefinitionen som i detta exempel:
void simpleCar (sköldpadda & t)
Parametern innanför parenteserna åberopar objektet sköldpadda.
Bilen är placerad på skärmen med den funktion simpleCar(t);
Detta anropar funktionen "simpleCar", och anger att det kommer att använda den sköldpadda-objekt med namnet "t".
Detta kan ljud komplicerat i början, men det kokar ner till detta:
- när du skriver en funktion som använder sköldpadda grafik, skriva (sköldpadda & t) som den första parametern för funktionen.
- när du ringer din funktion, skriva (t) som den första parametern i funktionsanropet.
"Turtle & t" i funktionsdefinitionen innebär att funktionen använder objektet sköldpadda. På samma sätt, "t" i funktionsanropet anger att funktionen använder objektet sköldpadda.
Låt oss skriva en funktion som drar en bil. Det blir enklare än bilen i det senare steg om animation, eftersom bilen är lite komplicerat för att dra. Här är den enkla versionen som visas ovan:
void simpleCar (sköldpadda & t)
{
t.setHeading(90);
t.arcRight (200, 180); längden på arc och grader = toppen av bil
t.Right(90);
t.Forward(20); nedre framsidan av bilen
t.Left(90);
t.arcRight (150, 540); Rita ett hjul
t.Left(90);
t.Forward(30); mittersta botten av bilen
t.Left(90);
t.arcRight (150, 540); dra en annan hjulet
t.Left(90);
t.Forward(10); Det är resten av botten av bilen - gjort!
}
Spara din funktion i slutet av TURTLEs.ino skiss.
Här är hur funktionen ska anropas. Placera följande 3 rader i den setup() delen av TURTLEs.ino skiss:
t.moveTo (100, 200); flytta till längst ner på skärmen - eller varhelst du vill fästa bilen
t.setPenColor("red"); - eller oavsett färg du vill att bilen ska
simpleCar(t); som kommer att dra bilen.
Din bil kan peka på fel sätt, men du kan använda t.setHeading() för att fixa det.