Turtle i blokk

Turtle-programmering er en samlebetegnelse på programmering der man bruker programmeringsspråk for å styre en figur (ofte en skilpadde) rundt som tegner mens den kjører. Turtle er en flott måte å bli kjent med de grunnleggende programmeringsprinsippene og øve på syntaks på en måte som fenger elevene mer enn mye annen programmering gjør.

Turtlestitch

Turtlestitch er en gratis plattform der man, blant annet, kan programmere geometriske mønstre.

Mønstrene man tegner kan hentes ut som vektoriserte svg-filer eller som broderifiler.

BLOKKER PÅ TRINKET

Trinket Blocks kan også brukes til Turtle-programmering, men det er ikke samme eksporteringsmuligheter.

Til gjengjeld kan man hoppe over i python og se koden uttrykt som tekst, som kan være nyttig/lærerikt.

Eksempel fra Trinket Blocks med blokk og tekst side ved side.

Eksemplene under er vist med utgangspunkt i TurtleStitch.

'Oppsett

Det kan være lurt å legge inn følgende kodesnutt i begynnelsen.

  • " Når (Flagg) klikkes " gjør at koden starter å kjøre når man klikker på det grønne flagget.

  • "reset", som sender skilpadden "tilbake til start", sletter det som er tegnet og resetter farger og innstillinger.


Alternativt kan man vise elevene tydeligere hva som trengs ved å bryte det opp:

  • " gå til x: __ y: __ " resetter skilpadden til midten av området.
    (Du kan selvfølgelig velge et annet startpunkt.)

  • "pek i retning __ " sørger for at skilpadden peker samme vei hver gang.

  • " slett " fjerner det som ble tegnet forrige gang koden kjørte.


Justere størrelsen på blokkene:

For ar blokkene skal bli enklere å jobbe med, kan det lønne seg å klikke på tannhjulet opp til venstre, klikke på Zoom blocks og velge en passende verdi, f.eks. 1.5 (merk at desimaltall må oppgis med punktum).

Penneverktøyet og farger.

De to viktigste blokkene ligger under clear, og det er pen down og pen up, som gjør akkurat det. I tillegg kan det være fint å leke seg litt med ulike tykkelser på pennen.

Fargene styres med blokker i Colors-menyen, og her kan man eksperimentere med hvordan farger er satt sammen, velge tilfeldige farger og endre fargene underveis i koden.

Mangekanter og 360-gradersprinsippet.

Når man skal tegne forskjellige mangekanter der skilpadda skal ende opp samme sted som den startet, bør man bruke en LØKKE med like mange repetisjoner som det skal være kanter i figuren. 360-gradersprinsippet tilsier at rotasjonen man skal foreta i hvert hjørne er 360 grader delt på antall hjørner i figuren.

For sekskanten til venstre må vi altså la vinklene bli 360/60=60 grader per sving/rotasjon.

Mange mangekanter

Moroa begynner for alvor når man ikke bare har en mangekanter, men mange mangekanter. Da får man en løkke i løkken. Din indre løkken er mangekanten, og her må man passe på at 360-gradersprinsippet gjelder (her 6 og 60). Det samme gjelder i den ytre løkken (her 5 og 72).

Med dette oppsettet er det bare å utforske og leke seg.

Bruk av variabler.

Hvis man skal lage spiraler og ulike figurer der noe skal endre seg underveis, bør man bruke VARIABLER. Hvis f.eks. lengden skilpadden går eller vinkelen den skal rotere skal endre seg i hver repetisjon, lager man en VARIABEL som man kan endre verdien på underveis mens koden kjører.

I koden til venstre er rotasjonen skilpadden gjør alltid 60 grader, men lengden den beveger seg blir større og større for hver repetisjon i løkka.

Pytagoras med variabler - Program som autogenererer rettvinklede trekanter.

Brodering

Hvis man skal eksportere en fil som kan kjøres på en broderingsmaskin, må man inn i Embroidery-menyen og velge hvilken type sting man vil lage etter hvert som skilpadden beveger seg.

Man kan bruke pen up/down eller jump stitch on/off underveis hvis skilpadden skal bevege seg uten at det skal lages sting på veien.

Noen utfordringer på tampen:

  • Lag et "fyrverkeri" som skyter fargede stråler ut i en tilfeldig retning fra et sentralt punkt. Kan fargen endre seg for hver stråle? Skal det være helt tilfeldig, eller kan fargen (hue) påvirkes av retningen på strålen?

  • Lag én arm på et snøfnugg, og repeter denne 6 ganger med 60 grader dreining for å lage et snøfnugg.

Lagring og eksportering til andre formater.

Til forskjell fra MakeCode, mister man det man har gjort hvis man forlater nettsiden. Man bør derfor lagre programmer man er fornøyd med, slik at de kan åpnes igjen senere.

Hvis man klikker på FIL-symbolet opp til venstre, kan man klikke Save eller Save As... og lagre en fil lokalt på maskinen din som du kan hente opp senere ved å klikke Open... eller Import... og finne filen du lagret.

Fra FIL-menyen kan man også eksportere mønsteret som:

  • SVG: Vaktorbasert grafikk, til bruk i f.eks. vinyl- eller laserkuttere.

  • PNG: "Vanlig" grafikk som man kan bruke der man måtte ønske.

  • EXP/DST: Broderiformater for bruk i broderingsmaskiner.

Turtle i blokk med trinket:

Trinket har en egen blokk-editor der man kan bygge opp kode og kjøre den.

En flott ting her er at man også kan se koden i python etter man har bygget den i blokk.

Oppgave fra privatisteksamen 2022

Oppgaven til venstre ble gitt på privatisteksamen for 10. trinn våren 2022.

  1. Diskuter med sidemannen hva "programmet" faktisk gjør.

  2. Gjenskap programmet i Turtlestich, Trinket Blocks eller Python.

    NB: Bruk a = 40 i programmet ditt.