Skrevet av: Oversatt fra microbit-micropython.readthedocs.io (

Like dokumenter
Python: Input og output

Python micro:bit - introduksjon

Skrevet av: Oversatt fra microbit-micropython.readthedocs.io (

ToPlayer. Introduksjon: Skrevet av: Ruben Gjerstad Eide og Kine Gjerstad Eide

Løpende strekmann Erfaren Videregående Python PDF

Steg 1: Piler og knappetrykk

PXT: Flasketuten peker på

ToPlayer. Steg 1: Kom i gang med metodene setup og draw. Gjør dette: Introduksjon:

PXT: Det regner mat! Introduksjon. Steg 1: Grunnlag. Sjekkliste. Skrevet av: Helene Isnes

Hver ting i en liste kalles et element. En liste lages ved å skrive elementer inni [], med, mellom elementene:

Steg 1: Animasjons-attributtet

Uendelig bakke. Introduksjon. Skrevet av: Kine Gjerstad Eide

Tre på rad mot datamaskinen. Steg 1: Vi fortsetter fra forrige gang

Sprettball Erfaren ComputerCraft PDF

Steg 1: Installere programvaren

Klask-en-Muldvarp. Introduksjon. Skrevet av: Basert på MITs "MoleMash for App Inventor 2"-guide (

Skilpaddekunst. Introduksjon. Skrevet av: Geir Arne Hjelle

Start et nytt PXT-prosjekt, for eksempel ved å gå til makecode.microbit.org (

Steg 1: Lag en figur som bytter drakt

I denne oppgaven skal vi gjøre enkle operasjoner på tekst, som å endre størrelsen på bokstavene og telle ord.

PXT: Micro:bit repeater

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Hvor i All Verden? Del 1. Introduksjon. Steg 1: Styr et helikopter. Skrevet av: Geir Arne Hjelle

Verden - Del 2. Steg 0: Oppsummering fra introduksjonsoppgaven. Intro

Steg 1: Tekst på flere linjer

Skilpaddekunst. Steg 1: Møt skilpadden. Sjekkliste. Introduksjon. Turtles

I denne oppgaven skal du lære hvordan du kan flytte rundt på elementer og gjemme elementene bak andre elementer ved hjelp av CSS.

7-Segment Display. Introduksjon. Steg 1: Finn frem utstyr. Til denne oppgaven trenger du. Skrevet av: Martin Ertsås & Morten Minde Neergaard

Steg 1: Regneoperasjoner på en klokke

1. Rullende navn, s 3 2. Smilefjes, s 5 3. Skritteller, s 7 4. Orakel, s 9 5. Stein, saks og papir, s Kompass, s 14

PXT: Himmelfall. Introduksjon. Skrevet av: Helene Isnes og Julie Revdahl

Steg 1: Husker du skilpadden?

Kan micro:biten vår brukes som et termometer? Ja, den har faktisk en temperatursensor!

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i.

Skilpadder hele veien ned

Elektronikk og programmering av ubrukelige roboter

Tell sekunder. Introduksjon. Skrevet av: Teodor Heggelund. I denne oppgaven skal vi lage vårt eget spill!

PXT: Bjelleklang. Introduksjon. Skrevet av: Kolbjørn Engeland, Julie Revdahl

Steg 1: Rest etter divisjon

Donkey Kong. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle

Steg 1: Lag bildedeklarasjon

Tre på rad mot datamaskinen. Steg 1: Vi fortsetter fra forrige gang. Sjekkliste. Introduksjon

Om du allerede kjenner Scratch og har en Scratchbruker kan du gå videre til Steg 1.

Bygg et Hus. Introduksjon. Steg 1: Prøv selv først. Skrevet av: Geir Arne Hjelle

JS: Grunnleggende JavaScript

Sprettball. Introduksjon. Skrevet av: Geir Arne Hjelle

Det du skal gjøre i denne oppgava er først å sette opp bakgrunnen til spillet og så rett og slett å få firkanter til å falle over skjermen.

Flagg. Introduksjon. Steg 1: Gå i sirkel. Skrevet av: Sverre Oskar Konestabo og Geir Arne Hjelle

Først må vi få datamaskinen til å velge et tilfeldig ord, så la oss begynne. Lagre programmet ditt og kjør det. Hvilket ord skrives ut?

Verden - Del 2. Intro. Skrevet av: Kine Gjerstad Eide

EKSAMENSOPPGAVE / EKSAMENSOPPGÅVE

"Hjerneteppe!" er en huskelek hvor du skal huske stadig lengre rekker med bokstaver!

Tetris. Introduksjon. Skrevet av: Kine Gjerstad Eide. Lag starten på ditt eget tetris spill!

Start et nytt Scratch-prosjekt. Slett kattefiguren, for eksempel ved å høyreklikke på den og velge slett.

CSS: Animasjon Nybegynner

JafseFisk. Introduksjon. Steg 1: JafseFisk følger musepekeren. Skrevet av: Oversatt fra Code Club UK (//codeclub.org.uk)

Hash-funksjoner. Introduksjon. Steg 1: Strekkoder. Eksempel. Skrevet av: Martin Strand

I denne oppgaven skal vi repetere litt Python-syntaks, det er en god blanding av alle tingene du har lært i Python til nå.

Steg 1: Canvas-elementet

Ultralydsensor. Introduksjon. Litt om ultralydsensorer. Arduino. Skrevet av: Martin Ertsås & Morten Minde Neergaard

Kom i gang med micro:bit

Verden. Introduksjon. Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide

Kryptering med vigenere-metoden

PXT: Det regnar mat! Introduksjon. Steg 1: Grunnlag. Sjekkliste. Skrevet av: Helene Isnes. Oversatt av: Stein Olav Romslo

Legg bort skilpaddene dine, i dag skal vi lære hvordan vi kan sende hemmelige beskjeder!

Steg 1: Felix følger musepekeren

Skilpaddetekst. Steg 1: Tekst på flere linjer. Sjekkliste. Introduksjon

Asteroids. Introduksjon. Oversikt over prosjektet. Skrevet av: Geir Arne Hjelle

Øvingsforelesning 3 Python (TDT4110)

Kan micro:biten vår brukes som en terning? Ja, det er faktisk ganske enkelt!

Hvor gammel er du? Hvor gammel er du? Del 1: Skrive ut til skjerm. Gjøre selv. Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim

Bygge en pyramide. Introduksjon. Steg 1: Lage en ny mod. Sjekkliste. Skrevet av: Pål G. Solheim

Snøballkrig. Introduksjon. Steg 1: En snøballkaster. Skrevet av: Geir Arne Hjelle

Hvor i All Verden? Del 2. Introduksjon. Steg 0: Forrige gang. Skrevet av: Geir Arne Hjelle

HTML: Legg til lyd og video

Steg 1: En første animasjon

"Dette skjer når jeg trykker på denne knappen" "Når jeg skriver i dette feltet, ser jeg at det andre forandrer seg"

Robotinvasjon Introduksjon ComputerCraft PDF

På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad.

Steg 0: Installere Pygame Zero

Forberedelser: Last ned bildefiler

Snurrige figurer. Steg 1: En snurrig figur. Sjekkliste. Introduksjon

Modell, meldinger og oppdatering

Skilpaddefraktaler Erfaren Python PDF

Klask-en-Muldvarp. Steg 1: Gjøre klart spillbrettet. Sjekkliste. Introduksjon

Bygge en kube. Introduksjon. Steg 1: Lage en ny mod. Skrevet av: Pål G. Solheim

Vi har sett enkle datamaskiner. Nå skal vi leke oss med roboter, og finne ut hvordan vi kan få dem til å gjøre forskjellige ting for oss.

Steg 1: Klargjør og importerer bilioteker

Steg 1: Lag et flyvende spøkelse

Steg 1: Lag en scene og legg til figurer

Enarmet banditt Nybegynner Scratch Lærerveiledning

Steg 1: Felix har forsvunnet!

Denne oppgaven innfører funksjoner, og viser hvordan vi kan skrive og teste funksjoner i Ellie.

Kryptering med Vigenère-metoden

Steg 1: Hvordan styre figurer med piltastene

La oss begynne enkelt. Vi vil først se hvordan vi kan flytte og snurre på en figur.

Lærerveiledning - Straffespark

Mattespill Nybegynner Python PDF

Transkript:

Python: Bilder Skrevet av: Oversatt fra microbit-micropython.readthedocs.io (https://microbitmicropython.readthedocs.io/en/latest/tutorials/images.html) Oversatt av: Øistein Søvik Kurs: Microbit Tema: Elektronikk, Tekstbasert Fag: Programmering, Teknologi Klassetrinn: 8.-10. klasse Introduksjon MicroPython er omtrent så god som deg til å lage kunst dersom det eneste du har er et 5x5 rutenett med røde LED lys ("light emitting diodes" -- de tingene som lyser opp på fremmsiden av enheten). I denne oppgaven skal vi se at MicroPython gir deg stor kontroll over displayet slik at du kan lage en rekke forskjellige interessante effekter. MicroPython har en rekke bilder bilder bygd inn som er klar til å vises på displayet. For eksempel for å få enheten til å se lykkelig ut kan du skrive from microbit import * display.show(image.happy) Jeg antar du husker hva den første linjen med kode gjør. Den andre linjen bruker display objektet til å vise ( show ) ett bilde som er bygd inn. Smilefjeset vi ønsker å vise er en del av Image objektet og heter naturlig nok HAPPY. Vi kan fortelle show å bruke bildet ved å legge det mellom parenthesene ( og ).

Liste av tilgjengelige bilder Image.HEART Image.HEART_SMALL Image.HAPPY Image.SMILE Image.SAD Image.CONFUSED Image.ANGRY Image.ASLEEP Image.SURPRISED Image.SILLY Image.FABULOUS Image.MEH Image.YES Image.NO

Image.CLOCK12, Image.CLOCK11, Image.CLOCK10, Image.CLOCK9, Image.CLOCK8, Image.CLOCK7, Image.CLOCK6, Image.CLOCK5, Image.CLOCK4, Image.CLOCK3, Image.CLOCK2, Image.CLOCK1 Image.ARROW_N, Image.ARROW_NE, Image.ARROW_E, Image.ARROW_SE, Image.ARROW_S, Image.ARROW_SW, Image.ARROW_W, Image.ARROW_NW Image.TRIANGLE Image.TRIANGLE_LEFT Image.CHESSBOARD Image.DIAMOND Image.DIAMOND_SMALL Image.SQUARE Image.SQUARE_SMALL Image.RABBIT Image.COW Image.MUSIC_CROTCHET Image.MUSIC_QUAVER Image.MUSIC_QUAVERS Image.PITCHFORK Image.XMAS Image.PACMAN Image.TARGET Image.TSHIRT Image.ROLLERSKATE Image.DUCK Image.HOUSE Image.TORTOISE Image.BUTTERFLY Image.STICKFIGURE Image.GHOST Image.SWORD

Image.GIRAFFE Image.SKULL Image.UMBRELLA Image.SNAKE Ting å prøve ut Det er ganske mange bilder! Modifiser koden som får micro:bit'en til å se lykkelig ut til å vise ulike bilder. Klarer du å løse noen av oppgavene under? Får du til å få enheten til å vise en strekmann? Hvor mange ulike dyr klarer du å vise? Få enheten til å vise hvilken time det er akkuratt nå! Lag dine egne bilder Selvsagt ønsker du og å vise dine egne bilder på micro:bit'en, ikke sant? Det er enkelt. Hver LED pixel på det fysiske displayet kan settes til en av ti verdier. Dersom en pixel er satt til 0 (null) så er den av. Det er bokstavlig talt en lysstyke på null. Imidlertid dersom verdien er satt til 9 så er den satt til maks. Bevepnet med denne informasjonen er det mulig a lage nye bilder som dette: from microbit import * panda = Image( "99999:" "09990") display.show(panda) Hva viser denne koden når du flasher den til enheten din? Hint: det er ikke en panda!

Har du funnet ut hvordan du kan tegne et bilde? Har du lagt merke til at hver linje av det fysiske displayet er representert med en linje av tall som slutter med : med ett par sitattegn " rundt? Hvert tall representerer en spesifikk lysstyrke. Det er fem linjer med fem tall, så det er mulig å spesifisere lysstyrken for hver av de fem pixlene på hver av de fem linjene på det fysiske displayet. Det er hvordan vi lager et bilde. Enkelt! Faktisk så trenger vi ikke skrive dette over flere linjer en gang. Dersom du klarer å holde styr på hver enkelt linje, kan du skrive det slik: boat = Image("05050:05050:05050:99999:09990") Ting å prøve ut Lag et smilefjes der det ene øyet lyser svakere Lag et hjertet som lyser så svakt som mulig. Hint: du kan bruke IMAGES.HEART for å se ett eksempel på ett hjerte. Animasjon Statiske bilder (bilder som står i ro) er artige, men det er enda gøyere å få dem til å bevege seg. Dette er fantastisk enkelt å gjøre med MicroPython ~ det er bare å bruke en rekke bilder! Men, før vi kan lære om animasjoner må vi først lære litt om lister. Her er en handleliste Egg Bacon Tomater Her er hvordan du representerer den samme listen i Python: shopping = ["Egg", "Bacon", "Tomater"] Her har jeg bare laget en liste kalt shopping som inneholder tre element. Python vet at dette er en liste siden det er firkant parenteser ( [ og ] ) rundt. Elementer i listen er adskilt av komma (, ) og i dette tilfellet så er elementene tre tekststrenger: Egg, Bacon og Tomater. Vi vet at de er tekststrenger fordi de er omsluttet av sitat-tegn ".

En liste kan inneholde nesten alt i Python. Her er en liste med tall: primes = [2, 3, 5, 7, 11, 13, 17, 19] Merk Tall trenger ikke å være sitert siden de representerer en verdi (heller enn en tekststreng). Det er en forskjell mellom 2 (Tallverdien 2) og ( "2" ) (tekststrengen som representerer tallet 2). Hvis dette er vanskelig å forstå så slapp av. Du kommer snart til å bli vant til det. Det er og mulig å oppbevare ulike ting i den samme listen: mixed_up_list = ["hello!", 1.234, Image.HAPPY] Vi kan fortelle MicroPython å animere en liste med bilder. For eksempel har vi allerede et par lister med bilder allerede innebygget. Disse er kalt henholdsvis Image.ALL_CLOCKS og Image.ALL_ARROWS. from microbit import * display.show(image.all_clocks, loop=true, delay=100) Som med et enkelt bilde så bruker vi display.show til å vise bildene displayet. Merk at vi fortalte MicroPython å bruke Image.ALL_CLOCKS og den forstod at vi ønsket å se hvert bildet etter hverandre. Vi kan og fortelle MicroPython å fortsette å loope over listen av bilder (slik at animasjonen fortsetter for alltid) ved å skrive loop=true. Videre kan vi si at vi ønsker at pausen mellom hvert bilde bare skal være 100 millisekund (En tiendedel av et sekund) med argumentet delay=100. Ting å prøve ut Animer over alle bildene av piler fra Image.ALL_ARROWS listen. Gjør slik at animasjonen bare kjører en gang (hint: det motsatte av True er False ). Forandre hastigheten på animasjonen slik at den går dobbelt så raskt

Skipshavari Endelig så er hvordan du kan lage din egen animasjon. I mitt eksempel så skal jeg få båten jeg laget tidligere til å synke til bunnen av displayet. from microbit import * boat1 = Image( "99999:" "09990") boat2 = Image( "99999") boat3 = Image( "05050") boat4 = Image( "05050") boat5 = Image( "05050") boat6 = Image( "00000") all_boats = [boat1, boat2, boat3, boat4, boat5, boat6] display.show(all_boats, delay=200)

Her er hvordan koden virker Jeg lager seks boat bilder akkurat som jeg forklarte ovenfor. Så putter jeg alle seks bildene i listen all_boats Endelig så sier jeg til display.show å animere listen med en pause på 200 millisekund mellom hvert bilde. Siden jeg ikke har satt loop = True vil båten bare synke en gang (slik at animasjonen min av båden som synker er vitenskapelig korrekt). ;) Ting å prøve ut Bruk smilefjeset du laget tidligere og animer det til å blunke med ett øye Animer hjertet du laget tidligere til å banke (hint: Du kan la lysstyrken gå fra 0 opp til 9 også tilbake igjen). Velg ditt eget bilde og animer det. Trenger du inspirasjon kan du se på listen over innebygde bilder ovenfor. Lisens: The MIT License (MIT) (https://github.com/bbcmicrobit/micropython/blob/master/license)