Lekce 3: Grafická plocha a souřadnice

python.edumach.cz



1. Struktura programových kódů

Postupně na nás čeká přes 60 výukových programů. Abychom v nich měli pořádek, budeme je ukládat podle tohoto systému:

  1. Hlavní složka se bude jmenovat python.
  2. V ní pak samotné programy pojmenované číslem kapitoly a pořadovým číslem (např. 03_1.py, 03_2.py...).

1.1. Nastavení výchozí cesty k souborům

Platí pouze pro IDLE Python ve Windows

IDLE Python si při Open / Save bere výchozí adresář podle toho, kde je nainstalovaný (typicky C:\Program Files\Python3nn\). Ve Windows se dá tato výchozí složka změnit jednoduchou úpravou zástupce tímto postupem.

V průběhu výuky budeš vytvářet mnoho programů. K tomu si vytvoř jednu složku s názvem Python, nejlépe v zálohovaném místě -- školním OneDrive.

  1. Zavři IDLE Python.
  2. Najdi zástupce, kterým IDLE spouštíš (např. v nabídce Start, na ploše nebo v liště).
  3. Klikni na něj pravým tlačítkem myši a vyber Vlastnosti.
  4. Na kartě Zástupce najdi políčko Spustit v: a zadej buď:
    "C:\Users\%USERNAME%\OneDrive - Panská\Python"
    
    nebo alespoň
    C:\Users\%USERNAME%\Documents\Python
    
    V každém případě musí cílová složka již existovat!
  5. Ulož změny a IDLE Python spusť z tohoto upraveného zástupce.

Poznámka: Pokud si vytvoříš dalšího zástupce programu IDLE Python, např. přidáš si jej (📌) na Hlavní panel, musíš si stejným postupem upravit i tohoto zástupce.


2. Grafická plocha

Máme spuštěné prostředí IDLE Python a vytvořený nový soubor (File → New File) – jsme v programovacím režimu.

Když chceme pracovat s grafickou plochou, musíme nejprve do programu importovat modul (knihovnu) pro práci s grafickou plochou (to je nějaký program, ve kterém už někdo naprogramoval příkazy, které budeme používat). Pro práci s grafikou použijeme modul tkinter. Tento modul importujeme na začátku programu zápisem import tkinter.

Po importu modulu vytvoříme grafickou plochu (canvas), do které budeme později kreslit canvas = tkinter.Canvas(). Příkaz canvas.pack() zobrazí nové okno s vytvořenou grafickou plochou. Celý program (zatím) vypadá takto:

# 03_1.py

import tkinter
canvas = tkinter.Canvas()   # Canvas() s velkým C
canvas.pack()

Slovo canvas před rovnítkem zatím ponechme stranou. Postupně se dozvíš co znamená toto slovo a znak =, který neznamená "rovná se".

Program musíme před spuštěním uložit pod názvem 03_1.py do složky python.

Když program spustíme (Menu Run → Run Module nebo klávesou F5), vytvoří se okno s grafickou plochou. V okně zatím nic nevidíme, protože jsme do něj ještě nic nenakreslili.

Okno se zavírá klasicky jako jiné okno v prostředí daného OS.

3. Souřadnicový systém

V grafické ploše budeme kreslit čáry, obdélníky, elipsy a další objekty. Při jejich kreslení musíme zadat jejich souřadnice.

Každý bod má dvě souřadnice: x a y. Souřadnice x určuje vodorovnou polohu a souřadnice y určuje svislou polohu. Ale pozor, souřadnice y roste směrem dolů (ne tak, jak jsme zvyklí v matematice, kde roste nahoru). Souřadnice zapisujeme jako dvojici čísel, kde souřadnice x je vždy první v této dvojici a druhá je souřadnice y.


Otázky:

  1. Jaké souřadnice má bod, který je 20 bodů nalevo od bodu se souřadnicemi [100, 50]?

  2. Jaké souřadnice má bod, který je 20 bodů napravo od bodu se souřadnicemi [100, 50]?

  3. Jaké souřadnice má bod, který je o 20 bodů výše od bodu se souřadnicemi [100, 50]?

  4. Jaké souřadnice má bod, který je o 20 bodů níže od bodu se souřadnicemi [100, 50]?

  5. Co mají společného všechny body nalevo nebo napravo od [100, 50]?