27
Racket – alkeet 2. KUVAT

Racket alkeet 2. Kuvat

Embed Size (px)

Citation preview

Page 1: Racket alkeet   2. Kuvat

Racket – alkeet 2. KUVAT

Page 2: Racket alkeet   2. Kuvat

2

2.1 Peruskuvioiden piirtäminen

Jotta kuvioita voi piirtää, täytyy ottaa käyttöön grafiikkakirjasto. Kirjoita alla oleva teksti DrRacketin määrittelyikkunaan ja paina ”run”.

(require 2htdp/image)

Kokeile seuraavia piirtofunktioita, joko määrittelyikkunassa (ja paina ”run”), tai interaktioikkunassa (ja paina <enter>).

Page 3: Racket alkeet   2. Kuvat

3

(circle 100 "solid" "red”)

100

Page 4: Racket alkeet   2. Kuvat

4

(rectangle 200 100 ”solid” ”blue”)

200

100

Page 5: Racket alkeet   2. Kuvat

5

(triangle 100 ”solid” ”yellow”)

100

100

Page 6: Racket alkeet   2. Kuvat

6

(square 100 ”outline” ”green”)

100

100

Page 7: Racket alkeet   2. Kuvat

7

(right-triangle 100 200 ”outline” ”brown”)

100

200

Page 8: Racket alkeet   2. Kuvat

8

2.2 Määrittelyt (define) Määrittelyn avulla voidaan antaa nimi jollekin arvolle. Tämä on erityisen hyödyllistä, jos arvoa käytettään usein.

Esim. Voimme määritellä mittoja kuten SÄDE:

(define SÄDE 50)

Tai kokonaisia kuvia kuten YMPYRÄ:

(define YMPYRÄ (circle SÄDE ”solid” ”red”))

Määrittely kirjoitetaan määrittelyikkunaan ja painetaan ”run”

Määriteltyä nimeä voi nyt käyttää kirjoittamalla SÄDE tai YMPYRÄ interaktioikkunassa ja painamalla <enter>

Isot kirjaimet viittaavat siihen, että tämän arvo ei muutu eli se on VAKIO.

Page 9: Racket alkeet   2. Kuvat

9

(define SUORAKULMIO

)

(rectangle 200 100 ”solid” ”blue”))

Page 10: Racket alkeet   2. Kuvat

10

(define YMPYRÄ

)

(circle 100 ”solid” ”red”))

Page 11: Racket alkeet   2. Kuvat

11

2.3 Yhdistettyjen kuvien piirtäminen

Peruskuvioita saadaan päällekkäin käyttämällä overlay - funktiota

Kuvat saadaan vierekkäin beside-, ja allekkain above – funktion avulla.

Page 12: Racket alkeet   2. Kuvat

12

(overlay SUORAKULMIO YMPYRÄ)

Page 13: Racket alkeet   2. Kuvat

13

(beside SUORAKULMIO YMPYRÄ)

Page 14: Racket alkeet   2. Kuvat

14

(above SUORAKULMIO YMPYRÄ)

Page 15: Racket alkeet   2. Kuvat

15

(overlay/xy SUORAKULMIO 0 0 YMPYRÄ)

(0, 0)

Page 16: Racket alkeet   2. Kuvat

(overlay/xy SUORAKULMIO 100 0 YMPYRÄ)

100

Page 17: Racket alkeet   2. Kuvat

(overlay/xy SUORAKULMIO 0 50 YMPYRÄ)

50

Page 18: Racket alkeet   2. Kuvat

(text ”punainen” 38 ”red”)

(overlay TEKSTI SUORAKULMIO)

Page 19: Racket alkeet   2. Kuvat

19

Koodaushaaste Tee Japanin lippu (define JAPANIN-LIPPU ..)

Tee auto (define AUTO ..)

Vihje: määrittele ensin KORI, RENGAS ja RENKAAT. Käytä näitä, kun teet AUTO:n

Page 20: Racket alkeet   2. Kuvat

20

Lisää koodaushaasteita Tee Suomen lippu (define SUOMEN-LIPPU ..)

Lisää autoosi teksti

Page 21: Racket alkeet   2. Kuvat

21

2.3 Kuvanmuokkausfunktiot

Kuvia voidaan lisäksi leikata, skaalata, kiertää sekä peilata vaaka- ja pystysuunnassa käyttämällä kuvan muokkausfunktioita.

Page 22: Racket alkeet   2. Kuvat

22

(rotate 90 LEHTI)

90°

Page 23: Racket alkeet   2. Kuvat

23

(flip-horizontal NUOLI)

Page 24: Racket alkeet   2. Kuvat

24

(flip-vertical NUOLI)

Page 25: Racket alkeet   2. Kuvat

25

(scale 0.5 NUOLI)

Page 26: Racket alkeet   2. Kuvat

26

(crop 0 0 50 50 YMPYRÄ)(0,0)

50

50

Page 27: Racket alkeet   2. Kuvat

27

KoodaushaasteSuunnittele kuva ja koodaa se. Esittele kuvasi muille ja kerro miten sait sen aikaiseksi.

Lisää piirtofunktioita löydät käsikirjasta:

http://racket.koodiaapinen.fi -> Käsikirja -> Kuvat – 2htdp/image