Uit Dutch Scratch-Wiki

ArtfulPen5a.png

De meeste computers zijn van zichzelf niet erg kunstzinnig. Toch kun je met behulp van de computer de meest kunstige tekeningen maken. In Scratch hebben we hiervoor de "pen"; het plaatje hiernaast is daarmee getekend. En dat is niet eens moeilijk, want de computer doet het meeste werk voor je!

Het begin

Elke sprite in Scratch heeft een "pen" waarmee je kunt tekenen op het speelveld. Laten we beginnen met iets eenvoudigs. Trek een lijn, draai 90 graden, trek weer een lijn... Vier lijntjes en je hebt een vierkant.

ArtfulPen1a.png
wanneer groene vlag wordt aangeklikt
verdwijn // de sprite zelf hoef ik niet te zien, die staat maar in de weg
ga naar x:(0) y:(0) // begin in het midden van het speelveld
richt naar (0 v) graden // onze eerste lijn zal recht omhoog gaan
wis alles // als er al een tekening stond, haal die dan eerst weg
pen neer // nu beginnen we te tekenen
herhaal (4) keer
	neem (100) stappen // trek een lijn
	draai (90) graden naar rechts // pas de richting aan voor de volgende lijn
einde

Dat was wel heel simpel. Maar nu veranderen we de draaihoek een klein beetje. In plaats van 90 graden, draaien we bij elke hoek 92 graden. Wat krijgen we dan?

ArtfulPen1b.png
herhaal (4) keer
	neem (100) stappen
	draai (92) graden naar rechts // een iets andere draaihoek!
einde

Een misvormd vierkant, zul je zeggen. Daar is weinig moois aan. Maar als je door blijft tekenen, dan krijg je best een leuk patroon. Het enige wat we daarvoor hoeven te veranderen is het getal 4 in het herhaal-blok. We doen niet te zuinig; ik maak er 100 van!

ArtfulPen1c.png
herhaal (100) keer // lekker veel!
	neem (100) stappen
	draai (92) graden naar rechts
einde





Met een eenvoudige cirkel kun je ook mooie patronen maken.

herhaal (25) keer
    herhaal (60) keer // de code in dit herhaalblok tekent één cirkel
	draai (6) graden naar rechts // 60 x 6 = 360 graden
        neem (6) stappen 
    einde
    draai (15) graden naar links // verander de looprichting iets voor de volgende cirkel wordt getekend
    neem (4) stappen // schuif een klein beetje op
einde


Cirkel-bloem.png





















Experimenteer eens met de draairichting naar links. Met 40 of 60 krijg je bijvoorbeeld andere tekeningen.

Variabele lengte

Tot nu toe had elk lijnstuk dezelfde lengte. Door de lengte te laten variëren, kunnen we van ons misvormde vierkant een soort spiraal maken. We beginnen met een klein vierkantje, en maken hem dan steeds een beetje groter. Hiervoor hebben we wel een variabele nodig:

(lengte van de lijn)
ArtfulPen2a.png

Denk eraan dat je deze variabele eerst moet aanmaken voordat je hem kunt gebruiken in je programma.

maak [lengte van de lijn v] [1] // we beginnen met een heel kort lijntje
herhaal (100) keer
	neem (lengte van de lijn) stappen // hier wordt de lijn getekend
	draai (92) graden naar rechts
	verander [lengte van de lijn v] met (1) // maak de lijn steeds een beetje langer
einde

Wat dit programmaatje zo bijzonder maakt, is dat je met een piepkleine wijziging er weer een heel ander plaatje mee kunt tekenen. Je hoeft alleen maar het getal van de draaihoek te veranderen. De volgende twee tekeningen zijn gemaakt met een draaihoek van 45 en van 160 graden. Probeer zelf eens 91 of 98 of .... in te vullen. Dan zul je de computer veel verschillende pentekeningen laten maken.

ArtfulPen2b.png ArtfulPen2c.png

Met cirkels kun je ook mooie plaatjes maken als je de cirkels steeds groter maakt door de lijnlengte stapsgewijs groter te maken.

maak [lengte van de lijn v] [1] // we beginnen weer met een kort lijntje
herhaal (21) keer
     herhaal (36) keer // de code in dit herhaalblok tekent één cirkel
	draai (10) graden naar rechts // 36 x 10 = 360 graden
        neem (lengte van de lijn) stappen 
    einde
    draai (15) graden naar rechts
    verander [lengte van de lijn v] met (1) // hierdoor wordt elke volgende cirkel groter

Met deze code maak je de cirkels steeds iets groter en draai je de tekenrichting van de pen iets naar rechts, voordat de computer de volgende cirkel tekent. Het resultaat is deze fraaie schelp:

Schelp.png






















Variabele draaihoek

In plaats van de lengte van de lijn variabel te maken, kunnen we ook de draaihoek laten variëren. Natuurlijk hebben we weer een variabele nodig.

ArtfulPen3a.png
(grootte van de draaihoek)

Je zult merken dat het met de programma's in dit hoofdstuk soms nodig is om wat langer door te tekenen om het plaatje helemaal compleet te krijgen. We hogen het getal in het herhaal-blok daarom nu op van 100 naar 800.

Het gevolg is wel dat het tekenen ook langer duurt. Ik raad je aan om de turbo-modus aan te zetten.

maak [grootte van de draaihoek v] [1]
herhaal (800) keer
	neem (10) stappen // vaste lengte
	draai (grootte van de draaihoek) graden naar rechts // variabele draaihoek
	verander [grootte van de draaihoek v] met (1) // stapgrootte - leuk om aan te passen!
einde
Begin-krul.png

Hoe ontstaat zo'n krul? In het roze plaatje kun je het begin er van zien. Als de computer dit roze plaatje verder zou tekenen, gaat de pen op een gegeven moment hele kleine rondjes draaien. Dat komt doordat de draaihoek steeds groter wordt. Hierdoor blijft de pen een beetje op dezelfde plek "hangen" totdat de hoek groter dan 180 graden is geworden. 181 graden rechtsom is hetzelfde als 179 graden linksom, de pen zal in omgekeerde richting de krul weer langzaam verlaten.

Na 360 stappen is de pen precies weer terug op het beginpunt. Dat komt mooi uit, want een draaihoek van 360 graden (een keer helemaal om je as) doet hetzelfde als een draaihoek van nul graden. De pen begint gewoon weer opnieuw een krul te tekenen, maar nu precies de andere kant op. Als ook die krul klaar is, is de tekening compleet.


Ook in dit programmaatje kun je met de getallen spelen. Het aanpassen van de lijnlengte (hier 10) zorgt er alleen maar voor dat de tekening groter of kleiner wordt. Om de vorm te veranderen, kun je de stapgrootte aanpassen; dat is het getal in het oranje verander-blok. De volgende twee tekeningen zijn gemaakt met een stapgrootte van 6 en van 5.

ArtfulPen3b.png ArtfulPen3c.png

Ingewikkeldere formules

Complexere tekeningen kun je maken door een wat ingewikkeldere formule te gebruiken voor de draaihoek. We blijven wel een variabele gebruiken, en net als in de vorige hoofdstukken, hogen we deze variabele na elk lijntje met één op. Bij het eerste lijntje is de variabele dus 1, bij het tweede lijntje is hij 2, enzovoort. Het is dus eigenlijk gewoon een teller die bijhoudt bij het hoeveelste lijntje we zijn. Ik zal de variabele daarom gewoon "teller" noemen.

(teller)

Onze eerste formule hoeft niet heel ingewikkeld te zijn; we vermenigvuldigen de teller gewoon met zichzelf.

((teller) * (teller))

Je zult zien dat dit al een veel complexere tekening oplevert. Door de toenemende complexiteit heb je meer lijnstukjes nodig om de tekening af te maken. Dus zullen we het getal in het herhaalblok nog wat verder opvoeren. We gaan van 800 naar 3000!

ArtfulPen4a.png
maak [teller v] [1] // beginwaarde - leuk om aan te passen!
herhaal (3000) keer
	neem (10) stappen
	draai ((teller) * (teller)) graden naar rechts // hier zie je de nieuwe formule
	verander [teller v] met (2) // stapgrootte - leuk om aan te passen!
einde

Ook hier kun je de tekening aanpassen door een andere stapgrootte te kiezen. Bijvoorbeeld de waarde 8:

ArtfulPen4b.png

Daarnaast kun je ook de beginwaarde van de teller aanpassen. De volgende tekening heeft nog steeds stapgrootte 8, maar dan met beginwaarde 2.

ArtfulPen4c.png

Laten we de formule nog iets verder uitbreiden:

((teller) * ((teller) + (2)))

Het getal 2 in deze formule is willekeurig gekozen; in de volgende voorbeelden zien we ook andere waardes, die de tekening compleet kunnen veranderen.

Ook de lijnlengte is niet overal hetzelfde. Dit is gedaan om te zorgen dat de tekeningen beter passen binnen de grenzen van het speelveld.

ArtfulPen5a.png
maak [teller v] [1]
herhaal (3000) keer
	neem (5) stappen
	draai ((teller) * ((teller) + (2))) graden naar rechts
	verander [teller v] met (1)
einde


ArtfulPen5b.png
maak [teller v] [1]
herhaal (3000) keer
	neem (15) stappen
	draai ((teller) * ((teller) + (12))) graden naar rechts
	verander [teller v] met (3)
einde


ArtfulPen5c.png
maak [teller v] [1]
herhaal (3000) keer
	neem (12) stappen
	draai ((teller) * ((teller) + (13))) graden naar rechts
	verander [teller v] met (3)
einde


ArtfulPen5d.png
maak [teller v] [1]
herhaal (3000) keer
	neem (8) stappen
	draai ((teller) * ((teller) + (13))) graden naar rechts
	verander [teller v] met (17)
einde





Meer voorbeelden

De mogelijkheden zijn eindeloos. Kijk maar eens in de studio "15 Word Challenge"; je vindt daar honderden verschillende projecten die allemaal op deze manier werken.

Cookies helpen ons onze services aan te bieden. Door onze services te gebruiken stemt u in met het gebruik van onze cookies.