0. lecke

1. lecke

2. lecke

3. lecke

4. lecke

5. lecke

6. lecke

7. lecke

8. lecke

9. lecke

5. lecke - Falevelek, virágok levelei

Levél Levél Levél Levél

JUHARFALEVÉL

Ebben a leckében különböző növények leveleit próbáljuk megrajzolni LOGO-ban.

Levél  

Első példánk legyen a juharfalevél, mely Kanada zászlóján is látható.

Levél

Kétféle módszerrel is megrajzoljuk ezt a levelet. Először egy egyszerűbb eljárást választunk,melyben csak szabályos háromszögre és téglalapra van szükségünk.

Írjunk olyan eljárást, melynek paramétere a hossz és a szín, és adott oldalhosszúságú, adott színű, kitöltött szabályos háromszöget rajzol! (Ha van már háromszög eljárásunk, akkor azt is felhasználhatjuk, csak a kitöltéssel kell kiegészíteni). Ahhoz, hogy a háromszög ne a csúcsára fordítva álljon, hanem alapja vízszintes legyen, a teknőcöt először elfordítjuk jobbra 30 fokkal, majd a végén visszafordítjuk.


tanuld szabháromszög :hossz :szín
tollszín! :szín
töltőszín! :szín
jobbra 30
ismétlés 3 [előre :hossz jobbra 120]
balra 30
tf jobbra 60 előre :hossz / 2 tl tölt
tf hátra :hossz / 2 balra 60 tl
vége



Háromszög rajzolása

Próbáld ki!


szabháromszög 100 9


szabháromszög 50 12


Ugyanígy írjunk egy téglalap eljárást, mely adott oldalhosszúságú, adott színű, kitöltött téglalapot rajzol. A téglalap eljárásnak már három paramétere lesz, mivel két különböző hosszúságú oldala van, és még a színt is meg kell adnunk. A három paraméter tehát legyen a, b és szín.


tanuld téglalap :a :b :szín
tollszín! :szín
töltőszín! :szín
ismétlés 2 [előre :a jobbra 90 előre :b jobbra 90]
tf jobbra 45 előre :a / 2 tl tölt
tf hátra :a / 2 balra 45 tl
vége



Téglalap rajzolása

Próbáld ki!


téglalap 60 100 5


téglalap 70 30 12


Most pedig építsük össze ezt a két alakzatot úgy, hogy megkapjuk a juharfa levelének egy "szirmát". Ehhez a téglalap tetejére kell rajzolnunk egy picike szabályos háromszöget. A háromszög oldalhossza legyen a téglalap b oldalának egyharmada. Ahhoz, hogy a háromszög középen legyen, a téglalap felső (b) oldalának egyharmadánál kell elkezdeni a rajzolását. a háromszög megrajzolása után pedig visszamegyünk a téglalap bal alsó sarkába, ahol a rajzolást elkezdtük. Egy eljárás mindig akkor igazán elegáns, ha a teknőc az eljárás végén ugyanott és ugyanúgy áll, mint az eljárás kezdetekor.


tanuld szirom :a :b :szín
téglalap :a :b :szín
tf előre :a jobbra 90 előre :b / 3 tl balra 90
szabháromszög :b / 3 :szín
tf balra 90 előre :b / 3 jobbra 90 hátra :a tl
vége



Juharlevél rajzolása

Próbáld ki!


szirom 100 100 6


szirom 200 100 12


Nincs más hátra, minthogy megrajzoljuk magát a levelet. Ehhez rajzolni kell három szirmot, melyből kettő kisebb, és el van forgatva 50 fokkal (az egyik balra, a másik jobbra), a végén pedig egy szárat.


tanuld zászló :méret :szín
tollszín! :szín
töltőszín! :szín
szirom :méret :méret * 2 / 3 :szín
balra 50
szirom :méret / 2 :méret / 3 :szín
jobbra 50
tf jobbra 90 előre :méret * 2 / 3 balra 90
balra 40 előre :méret / 3 jobbra 90 tl
szirom :méret / 2 :méret / 3 :szín
tf balra 90 hátra :méret / 3 jobbra 40
jobbra 90 hátra :méret / 3 jobbra 90 tl
tollvastagság! 4 előre :méret / 2 tf hátra :méret / 2
tf jobbra 90 előre :méret / 3 jobbra 90 tl
tollvastagság! 1
vége



Juharlevél rajzolása

Látszik, hogy csak egyetlen méretet adtunk meg, a méret paraméter a legnagyobb szirom hosszabbik, függőleges oldalának hosszát jelenti. A legnagyobb szirom rövidebbik oldala ennek 2/3 része, azaz méret*2/3, a kisebb szirmok hosszabbik oldala méret/2, rövidebbik oldala pedig méret/3 hosszú.

Fontos tudnunk, hogy a szirmokat a bal alsó sarkukból tudjuk megrajzolni. Először megrajzoltuk a legnagyobb szirmot, majd a végpontjából megrajzoltuk a bal oldali szirmot 50 fokkal balra fordulva, és visszafordultunk az eredeti irányba. Ezután jön az egyetlen nehézség, hiszen meg kell találnunk a jobb oldali kisebb szirom kezdőpontját, azaz bal alsó sarkát. 90 fokot jobbra fordulva (és a tollat felemelve) végigsétáltunk tehát a legnagyobb szirom alsó, vízszintes oldalán. Balra fordulva 40 fokot előre mentünk annyit, amennyi a kisebb szirom alsó oldalának hossza. Így elértünk a kisebb szirom bal alsó sarkába, csak irányba kellett állnunk a kisebb szirom megrajzolásához, ezért fordultunk 90 fokot jobbra. Ezután visszamentünk a nagy szirom kezdőpontjába, de félúton még megálltunk, hogy lefelé fordulva, 3-as tollvastagsággal megrajzoljuk a szárat.

Ha pontosabb, a zászlóhoz jobban hasonlító levelet szeretnénk rajzolni, ennél kicsit bonyolultabb eljárásra van szükségünk.

Elöljáróban ismerkedjünk meg egy olyan paranccsal, amely leegyszerűsíti azt, hogy ugyanoda visszataláljunk mindig, ahonnan az eljárást kezdtük. Eddig nem tudtunk mást csinálni, mint felemelt tollal visszasétáltunk ugyanazon az útvonalon, amin jöttünk. Ennél azonban egyszerűbb, ha megjegyezzük a hely "címét", ahonnan indulunk, és az eljárás végén visszaugrunk erre a "címre". Természetesen, ha az eljárás közben szükség van rá, bármilyen "címre" elugorhatunk. A parancs, mellyel ezt megtehetjük, a hely!, ezután kell megadni a címet. A cím tulajdonképpen koordinátákat jelent, ugyanúgy, mintha egy nagy koordináta-rendszerben mozognánk. A helyet természetesen az x és y koordinátával, azaz egy számpárral kell megadni, amit most szögletes zárójelek közé kell majd tenni. A kiindulópont, azaz a [0 0] a képernyő közepe. Ha az első számot (az x koordinátát) növeljük, akkor jobbra mozdulunk el, ha csökkentjük, akkor balra. Tehát a hely! [0 0] paranccsal mindig visszaugorhatunk a képernyő közepére, ugyanúgy, mintha a haza parancsot adnánk ki. A hely! [300 0] a képernyő jobb széle felé ugrik, a hely! [-412 0] a képernyő bal széle felé. Ha a második számot növeljük, akkor felfelé tudunk ugrani, ha csökkentjük, akkor lefelé. Tehát például a hely! [0 300] a képernyő felső széle felé ugrik, a hely! [478 305] a képernyő jobb felső sarka felé, a hely! [300 -200] pedig a jobb alsó sarok felé. Vigyázat! A hely! parancs kiadása előtt ne felejtsük el felemelni a tollat, különben az ugrás közben a teknőc vonalat is fog húzni!

Létezik még egy parancs, mely egyszerűsíti a teknőc irányítását, ez pedig az irány!, mely azt állítja be, hogy merre nézzen a teknőc. Az irány! 0 jelenti azt, hogy a teknőc függőlegesen felfelé néz, és amilyen számot írunk a parancs után, az határozza meg, hogy a teknőc jobbra hány fokot forduljon. Tehát irány! 90 esetén a teknőc jobbra fog nézni, irány! 180 esetén lefelé, irány! 270 esetén balra, irány! 360 pedig ugyanazt jelenti, mint az irány! 0, azaz ugyanúgy felfelé fog tőle nézni a teknőc (két parancs ugyanazt jelenti, ha bennük a számok között pontosan 360 a különbség). Természetesen bármilyen más számot is írhatunk a parancs után, ha kicsit akarjuk a teknőcöt jobbra fordítani, akkor kis számot kell írnunk, pl. irány! 20, ha pedig balra szeretnénk fordíta-ni, akkor vagy 360-hoz közeli számot kell írnunk, vagy negatív kicsi számot. Például, ha balra szeretnénk a teknőcöt 20 fokkal fordítani, az irány! -20 és az irány! 340 parancs egyaránt megfelel.

Ezek után nézzük az eljárást, melyben nem használunk síkidomokat, hanem a levél körvonalát magunktól rajzoljuk meg, majd kitöltjük a rajzolt alakzatot. Tehát az eljárásban semmi trükk nincs, azt, hogy mennyit menjünk előre, és mennyit forduljunk, próbálkozással döntöttük el.


tanuld juharfa
tf hely! [0 -150] irány! 0 tl
tollszín! 12
töltőszín! 12
balra 100 előre 200 jobbra 150 előre 60
balra 110 előre 200 jobbra 150 előre 70
balra 110 előre 100 jobbra 120 előre 100
balra 120 előre 80 jobbra 150 előre 200
balra 140 előre 250 jobbra 140 előre 70
balra 100 előre 110
tf hely! [0 -150] irány! 0 tl
jobbra 100 előre 200 balra 150 előre 60
jobbra 110 előre 200 balra 150 előre 70
jobbra 110 előre 100 balra 120 előre 100
jobbra 120 előre 80 balra 150 előre 200
jobbra 140 előre 250 balra 140 előre 70
jobbra 100 előre 110
tf hely! [0 -150] irány! 0
előre 100 tölt hátra 100 tl
tollvastagság! 4
hátra 150
tollvastagság! 1
vége



Juharlevél rajzolása

KITÉRŐ - KÖRCIKKEK

Ismételjük át az előző leckéből azt az eljárást, mely a kör közepéből kezdve rajzol körívet. Erre ugyanis szükségünk lesz a körcikk rajzolásához.

A körcikket úgy lehet elképzelni, mint egy körlap egy szeletét. Például a torta- vagy pizzaszeletek is felülről nézve körcikk alakúak. Az előző leckében tanult körívek segítségével könnyen rajzolhatunk körcikket, hiszen a körív két végét csak össze kell kötni a kör közepével (az összekötő vonalak tulajdonképpen a kör sugarai). Ezért ismételjük át, hogyan rajzoltunk körívet a kör közepéből kezdve:


tanuld körív3 :sugár :szög
tollatfel balra 90 előre :sugár jobbra 90 tollatle
ismétlés :szög [előre 3,14 * :sugár / 180 jobbra 1]
tollatfel jobbra 90 előre :sugár balra 90 tollatle
balra :szög
vége



Nincs más teendőnk, minthogy ne emeljük fel a tollat, amikor a kör közepéből kimegyünk a körvonalra a rajzoláshoz. Ugyanígy ne emeljük fel a tollat, amikor a körív megrajzolása után visszamegyünk a kör közepére. Ezután már csak ki kell töltenünk a körcikket valamilyen véletlenszerű színnel és mintával, és csak azután fordulunk az eredeti irányba.


tanuld körcikk :sugár :szög
balra 90 előre :sugár jobbra 90
ismétlés :szög [előre 3,14 * :sugár / 180 jobbra 1]
jobbra 90 előre :sugár balra 90
balra :szög
vége



Ha ennél érdekesebb körcikkeket szeretnénk kapni, kiegészíthetjük az eljárást a körcikk kitöltésével is.


tanuld körcikkszínes :sugár :szög
tollvastagság! 2
balra 90 előre :sugár jobbra 90
ismétlés :szög [előre 3,14 * :sugár / 180 jobbra 1]
jobbra 90 előre :sugár jobbra 180
tollatfel balra :szög / 2 előre :sugár / 5 tollatle tölt
tollatfel hátra :sugár / 5 balra :szög / 2
jobbra 90 tollatle
vége



Ennél az eljárásnál azonban nekünk kell beállítnunk az eljárás meghívása előtt a tollszínt, a töltőszínt és a töltőmintát. Ha meglepetésszerű színeket szeretnénk, akkor beleírhatjuk az eljárásba a színek beállítását véletlenszámok segítségével.


tanuld körcikkvéletlen :sugár :szög
tollszín! véletlenszám 15
töltőszín! véletlenszám 15
töltőminta! véletlenszám 7
tollvastagság! 2
balra 90 előre :sugár jobbra 90
ismétlés :szög [előre 3,14 * :sugár / 180 jobbra 1]
jobbra 90 előre :sugár jobbra 180
tollatfel balra :szög / 2 előre :sugár / 5 tollatle tölt
tollatfel hátra :sugár / 5 balra :szög / 2
jobbra 90 tollatle
vége



Körcikk rajzolása
körcikkvéletlen 100 120

Ha például ezt az eljárás szög paraméterének 180-at adunk meg, akkor félköröket kapunk. Több félkörből az alábbiakhoz hasonló mintákat kapunk:

Félkör Félkör Félkörök

TAVIRÓZSA

Tavirózsa  

Körcikkeinksegítségével könnyedén rajzolhatunk tavirózsa-levelet. Ugyanis a tavirózsa levelének pontosan körcikk alakja van, ahogy a képen is látható. A rajzoláshoz most a körcikkszínes eljárást fogjuk használni, hogy mi adhassuk meg a színeket és a mintát.



tanuld tavirózsa :sugár :szög
tollszín! 2
tollvastagság! 1,5
töltőszín! 2
töltőminta! 0
körcikkszínes :sugár :szög
vége



Tavirózsa rajzolása

KITÉRŐ - AZ RGB-SZÍNKÓD

Ezeknél a szép leveleknél jó lenne, ha több színből választhatnánk, nem csak abból a 16-ból, amit eddig ismerünk. Szerencsére teknőcünk jóval több színárnyalatot ismer ennél, a kérdés csak az, hogyan kell őt megkérni, hogy ezeket használja.

Van a színeknek egy olyan megadása, amikor a színeket gondolatban a három alapszínből, a pirosból, a zöldből és a kékből keverjük ki, és azt mondjuk meg három szám segítségével, hogy mennyi pirosat, zöldet és kéket kell belekeverni. Olyan, mintha lenne 3 tubus festékünk, mindig piros-zöld-kék sorrendben, és ezekből kevernénk ki az összes létező színt. Tehát három darab számra van szükségünk, melyek 0 és 255 között változhatnak. 0-t írunk arra a helyre, amelyik tubusból egyáltalán nem szeretnénk venni, és 255-öt, ha az egész tubust bele szeretnénk keverni az új színbe. A számokat mindig piros-zöld-kék sorrendben kell tehát leírnunk, innen ered a leírás neve, az RGB-kód, ugyanis angolul ezek a színek: Red, Green és Blue, ezek kezdőbetűinek segítségével nevezték el a leírást.

A számokat most is szögletes zárójelbe kell tennünk, ha a teknőcnek szeretnénk adni őket. Azt kell még megjegyeznünk, hogy furcsa módon ezek nagyon különleges festékek, mert minél többet teszünk egy tubusból, annál világosabb lesz a szín, minél kevesebbet, annál sötétebb. Nézzünk néhány példát erre a kódra: a [0 0 0] tehát a létező legsötétebb színt jelenti, vagyis a feketét. A [255 255 255] ezek szerint a létező legvilágosabb szín, vagyis a fehér. A [255 0 0] azt jelenti, hogy a piros tubust felhasználtuk, a többiből viszont nem vettünk, így piros színt kapunk. A [0 200 200] pedig azt, hogy pirosat nem használtunk, a zöldből és kékből pontosan ugyanannyit, ezért kékes-zöld színt fogunk kapni. Mindkét tubusból sokat használtunk, ezért viszonylag világos lesz a szín. A [200 0 200] a pirosnak és a kéknek a keveréke, azaz lila. Ha játsszunk vele egy kicsit, és több pirosat rakunk bele, meglátjuk, hogy például a [230 0 180] rózsaszínes lila lesz, ha több kéket, például a [180 0 230] kékes lila.

RGB-színek
[255 0 0]
RGB-színek
[0 200 200]
RGB-színek
[255 0 255]
RGB-színek
[230 0 180]
RGB-színek
[180 0 230]

De ugyanígy eljátszhatunk a zöld, barna, sárga vagy akármelyik másik színnel is:

RGB-színek
[0 90 0]
RGB-színek
[90 70 0]
RGB-színek
[255 255 0]
RGB-színek
[200 10 10]
RGB-színek
[255 170 0]

A színeknek ilyen megadását felhasználhatjuk akár a tollszín!, akár a töltőszín! parancs után. Már meglévő levél-eljárásainkon is javíthatunk, ha nem az adott 16 szín közül választunk, hanem ezzel a módszerrel keverünk színeket. Nézzük meg például, hogy a kanadai zászlón a juharlevél nem igazán piros, inkább bordó. Próbáljuk ki, hogy mit kapunk, ha az eljárásunkat kijavítjuk, és a tollszín! 12 valamint töltőszín! 12 parancsok helyett tollszín! [200 10 10] és töltőszín [200 10 10] parancsokat írunk! Ugyanígy a tavirózsa levelének is adhatunk szebb színt, tollszín! 2 és töltőszín! 2 helyett írjuk inkább a tollszín! [0 90 0] és töltőszín! [0 90 0] parancsokat!

Ha kicserélted a tavirózsa eljárásban a színt, akkor a következő eljárással ugyanolyan tavirózsákkal teli tavat tudsz rajzolni, amilyet én:


tanuld tavirózsák
tf balra 60 előre 300 tl
tavirózsa 60 300
tf hátra 300 jobbra 60
jobbra 40 előre 280 tl
tavirózsa 100 350
tf hátra 280 balra 40 tl
tavirózsa 120 320
tf balra 50 hátra 250 tl
tavirózsa 90 345
tf előre 250 jobbra 50
jobbra 33 hátra 290 tl
tavirózsa 80 315
tf előre 290 balra 33 tl
vége



Tavirózsák rajzolása

FALEVÉL

Falevél  

Ahhoz, hogy a képen láthatóhoz hasonló falevelet rajzoljunk, körívekre lesz szükségünk. Az eddigi körív eljárásaink azonban nem tökéletesek, mivel ezek a levelek általában alul tömzsibbek, és felfelé vékonyodnak, tehát nem egyenletes körív határolja őket. Ezért az ív megrajzolásához egy kisebb sugarú, nagyobb szögű, valamint egy nagyobb sugarú, kisebb szögű körívet fogunk összeragasztani. (a szöget az ismétlések számával határozzuk meg, a sugarat pedig azzal, hogy az ismétlésen belül, egy lépésben mennyit megyünk előre).


Ahhoz, hogy a levél mindkét szélét könnyedén megrajzoljuk, kétféle ív-eljárást fogunk írni: egy jobbra rajzolót és egy balra rajzolót. Így a végén csak ugyanonnan kiindulva rajzolunk egy jobbívet, majd egy balívet, kitöltjük, szárat rajzolunk neki, és kész a levél!


tanuld bív
balra 90
ismétlés 90 [előre 1 jobbra 1]
ismétlés 60 [előre 2 jobbra 1]
tf ismétlés 60 [hátra 2 balra 1]
ismétlés 90 [hátra 1 balra 1] tl
jobbra 90
vége



Ív rajzolása

Ív rajzolása  

tanuld jív
jobbra 90
ismétlés 90 [előre 1 balra 1]
ismétlés 60 [előre 2 balra 1]
tf ismétlés 60 [hátra 2 jobbra 1]
ismétlés 90 [hátra 1 jobbra 1] tl
balra 90
vége




Ekkor azonban mindig csak ugyanakkora íveket tudunk rajzolni, ami nem túl jó, hiszen így csak egyféle mérető levelet tudunk majd rajzolni a segítségükkel. A méretet jobb lenne paraméterként megadni. Azt fogjuk a paraméterrel megmondani, hogy az első ismétlésen belül minden egyes lépésben mennyit menjen előre a teknőc. A második ismétlésnél ennek kétszeresét teszi majd meg minden lépésben. Vigyázat! A meghívásnál mindig figyeljünk arra, hogy ez a lépéshossz nagyon kicsi kell, hogy legyen ahhoz, hogy az ív elférjen a képernyőn. Például egy 0 és 2 közötti számmal (lehet tizedestört is) kellő méretű íveket kapunk.


tanuld balív :lépés
balra 90
ismétlés 90 [előre :lépés~
jobbra 1]
ismétlés 60 [előre :lépés * 2~
jobbra 1]
tf ismétlés 60 [hátra :lépés * 2~
balra 1]
ismétlés 90 [hátra :lépés~
balra 1]
tl jobbra 90
vége




tanuld jobbív :lépés
jobbra 90
ismétlés 90 [előre :lépés~
balra 1]
ismétlés 60 [előre :lépés * 2 ~
balra 1]
tf ismétlés 60 [hátra :lépés * 2 ~
jobbra 1]
ismétlés 90 [hátra :lépés~
jobbra 1]
tl balra 90
vége





tanuld falevél :méret :szín
tollvastagság! 1
tollszín! :szín
töltőszín! :szín
balív :méret
jobbív :méret
tf előre 2 tölt hátra 2 tl
jobbra 180
tollvastagság! 3
előre 60
tf hátra 60 balra 180 tl
vége



Falevél rajzolása

Próbáld ki!


falevél 0,5 [70 0 0]


falevél 0,7 [250 240 10]


falevél 0,85 [0 40 0]


EREZETT FALEVÉL

Most pedig rajzoljuk meg a levél erezetét is! Ehhez először külön írunk egy erek nevű eljárást, mely csak a levél egyik felének erezetét rajzolja meg, levél nélkül. Az erek eljárásnak két paramétere van, az egyik a szög, mely megmutatja, hogy a függőleges főérből milyen szöggel induljanak ki a mellékerek, a másik a méret, mely egy kicsi lépés hosszát, a legrövidebb ér tizedét jelenti (ezért mindig nagyon kicsinek kell választatni, akár 1-nek). Ha a szöget pozitívnak választjuk (például 45°), akkor a bal oldali erezetet, ha negatívnak (például -45°), akkor a jobb oldali erezetet rajzolja meg (tehát a teljes erezet megrajzolásához kétszer kell majd ezt az eljárást meghívnunk, egyszer pozitív, egyszer negatív szöggel).


tanuld erek :szög :méret
előre 10 * :méret
balra :szög előre 70 * :méret
tf hátra 70 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 65 * :méret
tf hátra 65 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 60 * :méret
tf hátra 60 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 50 * :méret
tf hátra 50 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 40 * :méret
tf hátra 40 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 30 * :méret
tf hátra 30 * :méret jobbra :szög tl
előre 20 * :méret
balra :szög előre 15 * :méret
tf hátra 15 * :méret jobbra :szög tl
tf hátra 130 * :méret tl
vége


Ezek után az eres levelet rajzoló eljárásunk már egyszerű lesz:


tanuld eresfalevél :levélméret :szín :érméret
falevél :levélméret :szín
tollszín! [140 255 111]
tollvastagság! 1
előre 150 * :érméret
tf hátra 150 * :érméret tl
erek 45 :érméret
erek -45 :érméret
vége



Falevél rajzolása

Próbáld ki!


eresfalevél 1 [0 40 0] 1

Ha pedig egyre kisebb, különböző színű leveleket rajzolunk egymásra, a végén pedig egy eres falevelet még rájuk, akkor gyönyörű őszi levelet kapunk:


tanuld őszilevél
falevél 0,5 [70 0 0]
falevél 0,7 [250 240 10]
falevél 0,85 [0 200 0]
eresfalevél 1 [0 40 0] 1
vége



Falevél rajzolása

Sőt! Még több színt is használhatunk!


tanuld szupiőszilevél :méret
tf hátra 150 tl
falevél 0.2 * :méret [70 0 0]
falevél 0.3 * :méret [100 0 0]
falevél 0.4 * :méret [150 0 0]
falevél 0.5 * :méret [150 150 0]
falevél 0.6 * :méret [200 220 0]
falevél 0.7 * :méret [250 240 10]
falevél 0.8 * :méret [0 250 0]
falevél 0.9 * :méret [0 120 0]
eresfalevél 1 * :méret [0 40 0] :méret
vége



Falevél rajzolása

TÖLGYFALEVÉL

Tölgyfa-lalevél  

Ha új körív-eljárásokat írunk, másfajta leveleket is készíthetünk. Nézzük például a tölgyfa levelét. Elég ügyeskedéssel és próbálkozással tudunk olyan eljárást írni, mely az igazihoz egészen hasonló tölgyfa-levelet rajzol.


Ehhez az előző leckében megírt körív eljárásra lesz szükségünk, mégpedig arra, amelyik a sugár és a szög megadásával a kör vonaláról kezdi rajzolni a körívet. Lássuk, hogy is volt ez az eljárás:


tanuld körív2 :sugár :szög
ismétlés :szög [előre 3,14 * :sugár / 180 jobbra 1]
vége



Ez tulajdonképpen egy jobbra rajzoló körív-eljárás, tehát akár körívj-nek is nevezhetnénk. Írjuk meg a párját, a balra rajzoló eljárást is:


tanuld körívb :sugár :szög
ismétlés :szög [előre 3,14~
* :sugár / 180~
balra 1]
vége




tanuld körívj :sugár :szög
ismétlés :szög [előre 3,14~
* :sugár / 180~
jobbra 1]
vége




Ezt felhasználva meg tudjuk írni tölgylevél rajzoló eljárásunkat:


tanuld tölgy
tf hely! [0 -250] tl
tollszín! [0 125 0]
tollvastagság! 5
töltőszín! [0 125 0]
töltőminta! 0
körívb 150 60 körívj 20 120 körívb 25 130
előre 70 körívj 30 160 előre 30 körívb 15 160
körívj 150 30 körívj 50 120 körívj 150 20
körívb 10 90
előre 40 körívj 10 90
körívb 10 80 körívj 100 38
tf hely! [0 -250] tl irány! 0
körívj 150 60 körívb 20 120 körívj 25 130
előre 70
körívb 30 160 előre 30 körívj 15 160
körívb 150 30 körívb 50 120 körívb 150 20
körívj 10 90
előre 40 körívb 10 90
körívj 10 80 körívb 100 38
tf hely! [0 -250] tl irány! 0
tf előre 100 tölt hátra 100 tl
vége



Tölgyfa-levél rajzolása

GESZTENYEFALEVÉL

Gesztenyefa-lalevél  

Most pedig rajzoljunk gesztenyefa-levelet! Látszik, hogy a levél öt kisebb levélkéből áll, melyeket egy pontból kell majd megrajzolnunk, átméretezve és elforgatva.


Egy-egy levélkét, ha alulról, a szára felől rajzoljuk, akkor láthatjuk, hogy egyenes vonallal indul, majd jön egy körív, ezzel nagyjából elértünk a levél csúcsáig. Nehézséget jelent azonban, hogy a levélnek hullámos a széle. Ezért nem elég egyszerű vonalból és körívből megrajzolni, ahogy a fale-velet rajzoltuk, hanem olyan körív kell, mely apró kis hullámokból áll. Két kis hullám között mindig előre megyünk egy picit.

Nézzük először az első, kis hullámokból álló egyenes szakaszt, ennek egyetlen paramétere a méret lesz:


ismétlés :méret * 10 [előre 2 balra 90 körívj 3 180 balra 90]



Ezután jön a kis hullámokból álló ív:


ismétlés 12 [előre :méret balra 90 körívj :méret 180 balra 85]



A végén pedig, ahhoz, hogy ténylegesen elérjünk a levél csúcsáig, még egy egyszerű kicsi körívet fogunk rajzolni. A levél felének megrajzolása után pedig mindent ugyanúgy kell megrajzolni még egyszer, csak pont a másik irányba, azaz az összes parancsban ki kell cserélni a balra utasítást jobbra utasításra, és fordítva.

Az eljárásnak két paramétere lesz, a méret, és az irány, hogy könnyen tudjuk majd a segítségével mind az öt levélkét megrajzolni. Az eljárásban felhasználjuk a juharfa-levélnél megismert hely! és irány! parancsokat is.


tanuld gesztenye_levélke :méret :irány
tollvastagság! 1
tf hely! [0 -100] irány! :irány tl
balra 20 ismétlés :méret * 10 ~
[előre 2 balra 90 körívj 3 180 balra 90]
ismétlés 12 [előre :méret balra 90 ~
körívj :méret 180 balra 85]
ismétlés 8 [előre :méret balra 90 ~
körívj :méret 180 balra 87]
körívb 20 45
tf hely! [0 -100] irány! :irány tl
jobbra 20 ismétlés :méret * 10 ~
[előre 2 jobbra 90 körívb 3 180 jobbra 90]
ismétlés 12 [előre :méret jobbra 90 ~
körívb :méret 180 jobbra 85]
ismétlés 8 [előre :méret jobbra 90~
körívb :méret 180 jobbra 87]
körívj 20 45
tf hely! [0 -100] irány! :irány előre :méret * 50 tölt
hátra :méret * 100 tl
vége



Gesztenyefa-levél rajzolása

Ezzel az eljárással már könnyen rajzolhatunk egy teljes gesztenye-levelet:


tanuld gesztenye
tollvastagság! 1
tollszín! [0 185 0]
töltőszín! [0 185 0]
gesztenye_levélke 1,5 -110
gesztenye_levélke 1,9 -55
gesztenye_levélke 2,19 0
gesztenye_levélke 1,9 55
gesztenye_levélke 1,5 110
tf hely! [0 -100] irány! 0 tl
tollvastagság! 4 hátra 150
vége



Gesztenyefa-levél rajzolása



BEKÜLDENDŐ FELADATOK

1. FELADAT

Rajzold meg ezt a szép, színes őszi falevelet!

Ötlet: írj eljárást, mely megrajzolja a bal felét, aztán ami megrajzolja a jobb felét, aztán egyet, ami ezek alapján megrajzolja a teljes levelet, végül rajzolj több, külön-böző színű és méretű levelet egymásra!

Őszi levél Őszi levél

2. FELADAT

Rajzold meg a gyöngyvirág levelét!

Gyöngyvirág Gyöngyvirág

3. FELADAT

Rajzold meg a díszcsalán levelét!

Ötlet: figyelj rá, hogy a levél hosszúkás, és a széle hullámos!

Díszcsalán Díszcsalán

4. FELADAT

Készíts saját színes levelet! Le tudod utánozni még valamelyik létező növénynek a levelét?




Vissza az oldal tetejére
Az érdekességekhez
Előző lecke
Következő lecke