Loeffel-ei-loesung: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Detailschritte == | == Detailschritte == | ||
Die Lösung zu diesem Projekt wird hier in Teilen gezeigt: | Die Lösung zu diesem Projekt wird hier in Teilen gezeigt: | ||
* Variable setzen | * Variable setzen | ||
Zeile 14: | Zeile 10: | ||
</pre> | </pre> | ||
* Zeichnen des zentralen Punkts auf der Matrix: | |||
<pre id="01"> | |||
led.plot(2, 2) | |||
</pre> | |||
* Dauerhaft neuen Punkt setzen und | |||
* Dauerhaft neuen Punkt setzen und Abfrage der Neigung in X- und y-Richtung und Speicherung in accX und accY. | |||
<pre id="01"> | <pre id="01"> | ||
basic.forever(function () { | basic.forever(function () { | ||
Zeile 25: | Zeile 26: | ||
</pre> | </pre> | ||
* Vergleichen ob die Neigung kleiner als -150 (Linksneigung) oder größer 150 (Rechtsneigung) ist. Das gilt jeweils auch für die y-Neigung (Vor- und Zurück-Neigung). | |||
* Vergleichen ob die | |||
<pre id="01"> | <pre id="01"> | ||
basic.forever(function () { | basic.forever(function () { | ||
Zeile 43: | Zeile 42: | ||
</pre> | </pre> | ||
* Einbau einer Pause, | * Einbau einer Pause, damit das System nicht bei jeder kleinen Bewegung reagiert. Der Bildschirm muss vor der Anzeige immer gelöscht werden, damit die Änderungen am Display deutlich sichtbar werden. | ||
<pre id="01"> | <pre id="01"> | ||
basic.forever(function () { | basic.forever(function () { | ||
Zeile 51: | Zeile 50: | ||
</pre> | </pre> | ||
== Nun das gesamte Beispiel zusammengesetzt == | |||
<pre id="01"> | <pre id="01"> | ||
Zeile 75: | Zeile 74: | ||
basic.clearScreen() | basic.clearScreen() | ||
}) | }) | ||
</pre> | </pre> | ||
<htmlet>makecode_embed</htmlet> | <htmlet>makecode_embed</htmlet> |
Aktuelle Version vom 18. Januar 2022, 00:10 Uhr
Detailschritte
Die Lösung zu diesem Projekt wird hier in Teilen gezeigt:
- Variable setzen
let accY = 0 let accX = 0 let x = 2 let y = 2
- Zeichnen des zentralen Punkts auf der Matrix:
led.plot(2, 2)
- Dauerhaft neuen Punkt setzen und Abfrage der Neigung in X- und y-Richtung und Speicherung in accX und accY.
basic.forever(function () { led.plot(x, y) accX = input.acceleration(Dimension.X) accY = input.acceleration(Dimension.Y) })
- Vergleichen ob die Neigung kleiner als -150 (Linksneigung) oder größer 150 (Rechtsneigung) ist. Das gilt jeweils auch für die y-Neigung (Vor- und Zurück-Neigung).
basic.forever(function () { if (accX < -150 && x > 0) { x += -1 } else if (accX > 150 && x < 4) { x += 1 } if (accY < -150 && y > 0) { y += -1 } else if (accY > 150 && y < 4) { y += 1 } })
- Einbau einer Pause, damit das System nicht bei jeder kleinen Bewegung reagiert. Der Bildschirm muss vor der Anzeige immer gelöscht werden, damit die Änderungen am Display deutlich sichtbar werden.
basic.forever(function () { basic.pause(500) basic.clearScreen() })
Nun das gesamte Beispiel zusammengesetzt
let accY = 0 let accX = 0 let x = 2 let y = 2 basic.forever(function () { led.plot(x, y) accX = input.acceleration(Dimension.X) accY = input.acceleration(Dimension.Y) if (accX < -150 && x > 0) { x += -1 } else if (accX > 150 && x < 4) { x += 1 } if (accY < -150 && y > 0) { y += -1 } else if (accY > 150 && y < 4) { y += 1 } basic.pause(500) basic.clearScreen() })