Python má mnoho modulů, které poskytují funkce pro širokou škálu úkolů. Jedním z těchto modulů je modul želva, který se často používá k vizuální výuce začínajících programátorů.
Modul želva můžete použít ke kreslení grafiky, jako jsou čáry nebo tvary, na plátno. Zpočátku můžete na plátně zplodit jednu nebo více želv, což představuje body, po kterých se můžete pohybovat. Jak se pohybujete, želvy kreslí čáry z jednoho bodu do druhého.
Pomocí této metody můžete kreslit různé tvary, včetně čtverců, trojúhelníků a kruhů.
Jak používat želvy ke kreslení tvarů
Python můžete použít k vytvoření mnoha praktických programů, jako např barevnou paletu. Při kreslení želv v Pythonu budete nejprve potřebovat plátno a objekt želvy, se kterým budete kreslit tvary. V případě potřeby můžete některé upravit základní příklady Pythonu.
- Vytvořte nový soubor s názvem tvary.py.
- V horní části souboru importujte modul želvy:
import želva
- Pomocí modulu želva vytvořte nové okno. To bude fungovat jako plátno pro kreslení tvarů:
okno = želva. Obrazovka()
window.bgcolor("bílý") - Vytvořte nový objekt želva a nastavte jeho tvar a barvu:
želva_1 = želva. Želva()
želva_1.tvar("želva")
želva_1.barva("Červené") - V dolní části souboru použijte funkci exitonclick(), aby bylo plátno otevřené. Plátno se zavře, pouze když na něj kliknete. Ujistěte se, že ponecháte tento řádek jako poslední příkaz ve vašem programu; jinak dostanete chybu.
window.exitonclick()
- Otevřete příkazový řádek nebo terminál a přejděte do složky, kde jste uložili skript Python. Pokud jste například uložili svůj soubor Python na plochu počítače se systémem Windows, váš příkaz by vypadal takto:
cd C:\Users\Sharl\Desktop
- Spuštěním příkazu python otevřete plátno želvy. Ve výchozím nastavení je počáteční směr želvy otočen doprava:
Jak kreslit čtverce a obdélníky
Nakreslete čtverec nebo obdélník pomocí želvy na plátno. K pohybu želvy použijte funkce forward() a backward(). Můžete také použít funkce left() nebo right() ke změně směru, kterým je želva otočena.
- Protože želva je již otočena původním směrem, posuňte se dopředu o 100 pixelů a nakreslete první čáru čtverce:
želva_1.vpřed(100)
- Otočte se doprava o 90 stupňů směrem dolů. Posuňte se znovu vpřed a nakreslete druhou čáru čtverce:
želva_1.pravá(90)
želva_1.vpřed(100) - Pokračujte v otáčení doprava o 90 stupňů a nakreslete zbývající dvě čáry. Chcete-li zachovat čtvercový tvar, ujistěte se, že všechny okraje mají každý 100 pixelů:
želva_1.pravá(90)
želva_1.vpřed(100)
želva_1.pravá(90)
želva_1.vpřed(100) - Chcete-li změnit tento tvar na obdélník, upravte kód tak, aby byly dvě protilehlé strany delší:
želva_1.vpřed(100)
želva_1.pravá(90)
želva_1.vpřed(200)
želva_1.pravá(90)
želva_1.vpřed(100)
želva_1.pravá(90)
želva_1.vpřed(200) - Znovu spusťte příkaz python pomocí příkazového řádku nebo terminálu, abyste otevřeli plátno a zobrazili obdélník:
Jak kreslit trojúhelníky
Nakreslete tvar trojúhelníku pomocí funkcí forward(), backward(), left() nebo right(). Protože jste již nakreslili čtverec na výchozí pozici plátna, nakreslete trojúhelník na jinou část plátna.
- Vytvořte nový objekt želvy. Tvar můžete změnit a místo želvy použít šipku:
želva_2 = želva. Želva()
želva_2.tvar("Šíp")
želva_2.barva("modrý") - Pomocí funkce penup() zvedněte objekt želvy z plátna, takže již nekreslí čáru:
želva_2.penup()
- Přesuňte objekt na jiný bod na plátně. Plátno používá pro souřadnice kartézskou rovinu, takže počáteční bod je 0, 0. Souřadnice -250, 200 jsou směrem k levému hornímu rohu plátna.
želva_2.goto(-250, 200)
- Pomocí funkce pendown() umístěte objekt želvy zpět na plátno, aby mohl znovu začít kreslit čáry:
želva_2.pendown()
- Nakreslete tři strany trojúhelníku otočením doleva o 120 stupňů třikrát. Pokaždé nakreslete čáru a vytvořte stranu trojúhelníku:
želva_2.vpřed(100)
želva_2.left(120)
želva_2.vpřed(100)
želva_2.left(120)
želva_2.vpřed(100)
želva_2.left(120) - Alternativně vytvořte trojúhelník pomocí smyčky for:
pro i v rozsah(3):
želva_2.vpřed(100)
želva_2.left(120) - Znovu spusťte příkaz python pomocí příkazového řádku nebo terminálu, abyste otevřeli plátno a zobrazili trojúhelník:
Jak kreslit kruhy
Pomocí funkce circle() nakreslete kruh. Průměr kruhu můžete zvolit zadáním hodnoty jako argumentu do funkce.
- Vytvořte další nový objekt želvy, kterým nakreslíte kruh, a nastavte jeho vlastnosti barvy a tvaru:
želva_3 = želva. Želva()
želva_3.tvar("kruh")
želva_3.barva("zelená") - Přesuňte želvu na jinou část plátna. Pomocí funkce penup() zabráníte objektu v kreslení čáry, když se pohybuje. Po přesunutí želvy umístěte pero opět dolů:
želva_3.penup()
želva_3.goto(-100, 50)
želva_3.pendown() - Pomocí funkce circle() nakreslete kruh. Do funkce zadejte průměr kruhu.
želva_3.kruh(50)
- Znovu spusťte příkaz python pomocí příkazového řádku nebo terminálu, abyste otevřeli plátno a zobrazili kruh:
Jak kreslit tvary, jako jsou šestiúhelníky a osmiúhelníky
Chcete-li kreslit tvary, jako jsou šestiúhelníky nebo osmiúhelníky, můžete použít smyčku for podobnou té, která je použita v příkladu trojúhelníku. Můžete zadat stejný počet stran a vytvořit strany se stejnou délkou.
- Vytvořte nový objekt želva a nastavte jeho vlastnosti tvaru a barvy:
želva_4 = želva. Želva()
želva_4.tvar("želva")
želva_4.barva("nachový") - Přesuňte objekt želvy na jiné místo na plátně:
želva_4.penup()
želva_4.goto(150,200)
želva_4.pendown() - V šestiúhelníku je v místě, kde se každá přímka stýká, úhel v tomto bodě 60 stupňů. Po nakreslení čáry se posuňte o 60 stupňů doprava a nakreslete další čáru. Udělejte to pro všech šest stran šestiúhelníku:
pro i v rozsah(6):
želva_4.vpřed(100)
želva_4.right(60) - Můžete kreslit jiné druhy tvarů se stejnými stranami vydělením počtu stran číslem 360, abyste získali hodnotu úhlu. U osmiúhelníku je každý úhel mezi každou stranou 45 stupňů. Pro každou z osmi stran se otočte doprava o 45 stupňů a nakreslete čáru:
pro i v rozsah(8):
želva_4.vpřed(100)
želva_4.right(45) - Znovu spusťte příkaz python pomocí příkazového řádku nebo terminálu, abyste otevřeli plátno a zobrazili šestiúhelník nebo osmiúhelník. Můžete také zobrazit úplný zdrojový kód všech tvarů na Github.
Naučte se grafické programování vytvářením tvarů
Ke kreslení různých druhů tvarů na plátno můžete použít grafiku založenou na želvě. Proč neprozkoumat další způsoby vytváření tvarů pomocí Pythonu, například pomocí aplikace JES.