> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/cs/obrazky-a-tabulky/04-picture-environment.md).

# Kreslení diagramů přímo v LaTeXu

## Úvod

Vestavěné `picture` prostředí lze použít k vytváření diagramů/obrázků—nemusíte *nepotřebují* na jeho použití načítat žádné externí balíčky, ale balíčky jako [`pict2e`](https://ctan.org/pkg/pict2e?lang=en) a [`picture`](https://ctan.org/pkg/picture) byly napsány, aby rozšířily nebo vylepšily jeho funkce.

Tento článek poskytuje stručný úvod do `picture` prostředí a všechny příklady používají [`pict2e` accents](https://ctan.org/pkg/pict2e?lang=en). Podrobnější dokumentace a řada užitečných příkladů jsou snadno dostupné v následujících zdrojích:

* [Neoficiální referenční příručka LaTeX2e](https://latexref.xyz/picture.html)
* [Nepříliš krátký úvod do LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (viz kapitola 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [otázky označené `picture-mode` na tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` dokumentace balíčku](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)

Ve srovnání s výkonnými a sofistikovanými grafickými nástroji, jako jsou [TikZ/PGF](https://en.wikipedia.org/wiki/PGF/TikZ), [MetaPost](https://tug.org/metapost.html), [PSTricks](https://ctan.org/topic/pstricks?lang=en) nebo [Asymptote](https://ctan.org/pkg/asymptote?lang=en) webových stránkách `picture` prostředí se může zdát docela omezené, ale čas od času může být dostatečné pro to, co potřebujete udělat.

## Vytvoření nového obrázku

Vytvoření nového obrázku obvykle zahrnuje následující kroky:

1. definujte velikost kreslicích jednotek, které chcete používat;
2. deklarujte `picture` prostředí, které definuje velikost obrázku;
3. nakreslete jednotlivé grafické komponenty pomocí `\put`, `\multiput` nebo `\qbezier` příkazů.

### Definujte velikost kreslicích jednotek

Chcete-li vytvořit obrázek, obvykle začnete nastavením *kreslicích jednotek* pomocí příkazu `\unitlength`, který musí být použit mimo `picture` prostředí. Například, pokud napíšete

```latex
\setlength{\unitlength}{1cm}
```

kreslicí jednotky by byly interpretovány jako násobky 1cm. Výchozí jednotka je 1pt.

### Definujte velikost svého obrázku

Obecný tvar `picture` prostředí je následující

```latex
\begin{picture}(width, height)(Xoffset, Yoffset)
 ...
\end{picture}
```

kde

* `width` a `výška` jsou hodnoty v jednotkách `\unitlength`, které definují velikost obrázku. LaTeX používá tyto hodnoty k vytvoření boxu, jehož rozměry jsou
  * šířka boxu (obrázku) = `width` × `\unitlength`
  * výška boxu (obrázku) = `výška` × `\unitlength`
* `(Xoffset, Yoffset)` je volitelná souřadnice, která nastavuje počátek (levý dolní roh) obrázku, vyjádřený jako *posun* vzhledem k výchozí poloze. `Xoffset` a `Yoffset` jsou také vyjádřeny v jednotkách určených aktuální hodnotou `\unitlength`.

Všimněte si, že `Xoffset` a `Yoffset` neovlivňují množství místa, které LaTeX vyhradí; tj. rozměry boxu.

#### Porozumění rozměrům obrázku

Vytvoříme dva obrázky, oba používající `\setlength{\unitlength}{1cm}` a každý s `width` a `výška` velikostí 3 jednotek.

První obrázek používá výchozí počátek `(0,0)`:

```latex
\begin{picture}(3,3)
...
\end{picture}
```

druhý obrázek posouvá (posune) počátek o `(1,1)`:

```latex
\begin{picture}(3,3)(1,1)
...
\end{picture}
```

### Kreslení grafiky

Grafika se vytváří pomocí posloupnosti `\put`, `\multiput`, nebo `\qbezier` příkazů, které vytvářejí jednotlivé „komponenty“ (nebo „objekty“), z nichž je obrázek nebo ilustrace sestavena:

* `\put(x, y){*component*}` vykreslí `*component*` na místě `(x, y)`.
* `\multiput(x, y)(dx, dy){n}{*component*}` vykreslí `*component*` `n` krát: počínaje na místě `(x, y)` a opakovaně posunem o `(dx, dy)` znovu vykreslí `*component*`.
* `\qbezier[n](x<sub>1</sub>, y<sub>1</sub>)(x, y)(x<sub>2</sub>, y<sub>2</sub>)`: vykreslí [kvadratickou Bézierovu křivku](https://en.wikipedia.org/wiki/B%C3%A9zier_curve#Quadratic_B%C3%A9zier_curves) kde:
  * `n` volitelné celé číslo, které určuje počet bodů použitých k vykreslení/vytvoření křivky
  * `(x<sub>1</sub>, y<sub>1</sub>)` je počáteční bod křivky
  * `(x<sub>2</sub>, y<sub>2</sub>)` je koncový bod křivky
  * `(x, y)` označuje řídicí bod (kvadratické) Bézierovy křivky

Zkopírovaný `*component*` je grafický prvek obvykle vytvářený pomocí grafických primitiv, jako jsou `\line`, `\oval`, `\circle`, `\vector` a tak dále—viz [Neoficiální referenční příručka LaTeX2e](https://latexref.xyz/picture.html) nebo [Nepříliš krátký úvod do LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (kapitola 5) pro podrobnosti o dostupných primitivech.

**Poznámka**: Ten [`pict2e` accents](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf) rozšiřuje původní `picture` prostředí a poskytuje několik příkazů pro kreslení Bézierových křivek: `\bezier`, `\qbezier`, `\cbezier` a `\qbeziermax`.

### Porozumění posunu a počátku

V následujících příkladech je použit příkaz `\put` k vykreslení barevných teček, které označují klíčové souřadnice (pozice) v grafice. Oba příklady používají příkaz LaTeXu `\fbox` k vykreslení rámečku kolem boxu, který LaTeX vytvořil, aby obsahoval náš obrázek, a ukazuje *ohraničující rámeček* grafiky.

**Příklad 1: Použití výchozího počátku**

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\usepackage[dvipsnames]{xcolor}
\begin{document}
\setlength{\unitlength}{1cm}
\setlength{\fboxsep}{0pt}

Toto je můj obrázek\fbox{%
\begin{picture}(3,3)
\put(0,0){{\color{blue}\circle*{0.25}}\hbox{\kern3pt \texttt{(0,0)}}}
\put(3,3){{\color{red}\circle*{0.25}}\hbox{\kern3pt \texttt{(3,3)}}}
\end{picture}}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Csetlength%7B%5Cfboxsep%7D%7B0pt%7D%0A%0AThis+is+my+picture%5Cfbox%7B%25%0A%5Cbegin%7Bpicture%7D%283%2C3%29%0A%5Cput%280%2C0%29%7B%7B%5Ccolor%7Bblue%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt+%5Ctexttt%7B%280%2C0%29%7D%7D%7D%0A%5Cput%283%2C3%29%7B%7B%5Ccolor%7Bred%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt+%5Ctexttt%7B%283%2C3%29%7D%7D%7D%0A%5Cend%7Bpicture%7D%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![rozměry prostředí LaTeX picture](/files/898566654aec8a35eb5332d1d4f8d95f06ea0d5b)

Ta `\fbox` příkaz vykreslí rámeček kolem ohraničujícího boxu grafiky a ukazuje prostor (oblast) vyhrazený LaTeXem:

* šířka obrázku = `width` × `\unitlength` = 3 × 1cm = 3cm.
* výška obrázku = `výška` × `\unitlength` = 3 × 1cm = 3cm.

První příklad ukazuje, že počátek, `(0,0)`, je v bodě, kdy byl `\begin{picture}` příkaz vykonán, bezprostředně po textu „Toto je můj obrázek“. Kromě toho je pravý horní roh na pozici `(3,3)`, `(width,height)` hodnoty poskytnuté `\begin{picture}(3,3)`.

**Příklad 2: Posunutí počátku o (1,1)**

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\usepackage[dvipsnames]{xcolor}
\begin{document}
\setlength{\unitlength}{1cm}
\setlength{\fboxsep}{0pt}

Toto je můj obrázek\fbox{%
\begin{picture}(3,3)(1,1)
\put(0,0){{\color{blue}\circle*{0.25}}\hbox{\kern3pt\texttt{(0,0)}}}
\put(1,1){{\color{orange}\circle*{0.25}}\hbox{\kern3pt\texttt{(1,1)}}}
\put(3,3){{\color{red}\circle*{0.25}}\hbox{\kern3pt\texttt{(3,3)}}}
\put(4,4){{\color{black}\circle*{0.25}}\hbox{\kern3pt\texttt{(4,4)}}}
\end{picture}}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+2\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cusepackage%5Bdvipsnames%5D%7Bxcolor%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Csetlength%7B%5Cfboxsep%7D%7B0pt%7D%0A%0AThis+is+my+picture%5Cfbox%7B%25%0A%5Cbegin%7Bpicture%7D%283%2C3%29%281%2C1%29%0A%5Cput%280%2C0%29%7B%7B%5Ccolor%7Bblue%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%280%2C0%29%7D%7D%7D%0A%5Cput%281%2C1%29%7B%7B%5Ccolor%7Borange%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%281%2C1%29%7D%7D%7D%0A%5Cput%283%2C3%29%7B%7B%5Ccolor%7Bred%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%283%2C3%29%7D%7D%7D%0A%5Cput%284%2C4%29%7B%7B%5Ccolor%7Bblack%7D%5Ccircle%2A%7B0.25%7D%7D%5Chbox%7B%5Ckern3pt%5Ctexttt%7B%284%2C4%29%7D%7D%7D%0A%5Cend%7Bpicture%7D%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![rozměry prostředí LaTeX picture](/files/198dbf07e194ffbe23cf44ccf7a4bb27779d7b7c)

Druhý příklad ukazuje účinky posunutí počátku a zdůrazňuje některé klíčové body:

* okraj vytvořený příkazem `\fbox` ukazuje, že ohraničující rámeček grafiky, šířka a výška boxu vytvořeného LaTeXem, je *neovlivněn* posunutím počátku: je stále určen `(width,height)` hodnoty poskytnuté `\begin{picture}(3,3)(1,1)`
  * šířka obrázku = `width` × `\unitlength` = 3 × 1cm = 3cm
  * výška obrázku = `výška` × `\unitlength` = 3 × 1cm = 3cm
* kreslicí prvky nejsou omezeny (oříznuty) na oblast (rozměry ohraničujícího rámečku) vytvořenou LaTeXem. Například modrá tečka a `(0,0)` souřadnice jsou vykresleny mimo hranici vytvořenou příkazem `\fbox`, což označuje ohraničující rámeček.
  * Je na uživateli, aby zajistil, že kreslicí prvky zůstanou uvnitř ohraničujícího rámečku a nepřekryjí žádný okolní text.
* počátek, `(0,0)`, je *již* umístěn bezprostředně za textem „Toto je můj obrázek“, v bodě, kdy byl `\begin{picture}` příkaz vykonán: počátek je nyní posunut o 1 jednotku doleva a 1 jednotku dolů
* pravý horní roh je nyní na pozici `(4,4)`

## Příklady prostředí picture

### Příklady z neoficiální referenční příručky LaTeX2e

Ta [Neoficiální referenční příručka LaTeX2e](https://latexref.xyz/picture.html) obsahuje řadu `picture` příkladů prostředí, některé z nich jsou zde reprodukovány spolu s odkazy, které je otevřou v Overleafu, což vám umožní upravovat a zkoumat kód.

#### Příklad 1: příkaz \vector

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(6,6)      % box obrázku bude široký 6 cm a vysoký 6 cm
  \put(0,0){\vector(2,1){4}}  % na každé 2 doprava jde tento vektor 1 nahoru
    \put(2,1){\makebox(0,0)[l]{\ první úsek}}
  \put(4,2){\vector(1,2){2}}
    \put(5,4){\makebox(0,0)[l]{\ druhý úsek}}
  \put(0,0){\vector(1,1){6}}
    \put(3,3){\makebox(0,0)[r]{součet\ }}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cbegin%7Bpicture%7D%286%2C6%29++++++%25+picture+box+will+be+6cm+wide+by+6cm+tall%0A++%5Cput%280%2C0%29%7B%5Cvector%282%2C1%29%7B4%7D%7D++%25+for+every+2+over+this+vector+goes+1+up%0A++++%5Cput%282%2C1%29%7B%5Cmakebox%280%2C0%29%5Bl%5D%7B%5C+first+leg%7D%7D%0A++%5Cput%284%2C2%29%7B%5Cvector%281%2C2%29%7B2%7D%7D%0A++++%5Cput%285%2C4%29%7B%5Cmakebox%280%2C0%29%5Bl%5D%7B%5C+second+leg%7D%7D++%0A++%5Cput%280%2C0%29%7B%5Cvector%281%2C1%29%7B6%7D%7D%0A++++%5Cput%283%2C3%29%7B%5Cmakebox%280%2C0%29%5Br%5D%7Bsum%5C+%7D%7D++%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad prostředí picture](/files/e8256b4c47fdf1eeaab4f5709fa89437ebbf0cdf)

#### Příklad 2: příkazy \qbezier, \line, \vector, \thinlines a \thicklines

Všimněte si, jak `\qbezier` příkaz *není* použit v rámci `\put{...}` zatímco jiné primitivní příkazy, jako například `\line`, `\vector` *jste* použit v rámci `\put{...}`.

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(8,4)
  \thinlines % Začněte tenkými čarami
  \put(0,0){\vector(1,0){8}}  % osa x
  \put(0,0){\vector(0,1){4}}  % osa y
  \put(2,0){\line(0,1){3}}    % levá strana
  \put(4,0){\line(0,1){3.5}}  % pravá strana
  \thicklines % Pro příkazy \qbezier použijte silnější čáry
  \qbezier(2,3)(2.5,2.9)(3,3.25)
  \qbezier(3,3.25)(3.5,3.6)(4,3.5)
  \thinlines % Zpět k tenkým čarám
  \put(2,3){\line(4,1){2}}
  \put(4.5,2.5){\framebox{Trapezoidové pravidlo}}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=qbezier+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cbegin%7Bpicture%7D%288%2C4%29%0A++%5Cthinlines+%25+Start+with+thin+lines%0A++%5Cput%280%2C0%29%7B%5Cvector%281%2C0%29%7B8%7D%7D++%25+x+axis%0A++%5Cput%280%2C0%29%7B%5Cvector%280%2C1%29%7B4%7D%7D++%25+y+axis%0A++%5Cput%282%2C0%29%7B%5Cline%280%2C1%29%7B3%7D%7D++++%25+left+side%0A++%5Cput%284%2C0%29%7B%5Cline%280%2C1%29%7B3.5%7D%7D++%25+right+side%0A++%5Cthicklines+%25+Use+thicker+lines+for+the+%5Cqbezier+commands%0A++%5Cqbezier%282%2C3%29%282.5%2C2.9%29%283%2C3.25%29%0A++%5Cqbezier%283%2C3.25%29%283.5%2C3.6%29%284%2C3.5%29%0A++%5Cthinlines+%25+Back+to+using+thin+lines%0A++%5Cput%282%2C3%29%7B%5Cline%284%2C1%29%7B2%7D%7D%0A++%5Cput%284.5%2C2.5%29%7B%5Cframebox%7BTrapezoidal+Rule%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad prostředí LaTeX picture](/files/723c2d3c0aefe7a00fd496f88fba8b6dc4a11166)

#### Příklad 3: příkazy \multiput a \linethickness

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\thicklines
\begin{picture}(10,10)
  \linethickness{0.05mm}
  \multiput(0,0)(1,0){10}{\line(0,1){10}}
  \multiput(0,0)(0,1){10}{\line(1,0){10}}
  \linethickness{0.5mm}
  \multiput(0,0)(5,0){3}{\line(0,1){10}}
  \multiput(0,0)(0,5){3}{\line(1,0){10}}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=multiput+command+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cthicklines%0A%5Cbegin%7Bpicture%7D%2810%2C10%29%0A++%5Clinethickness%7B0.05mm%7D%0A++%5Cmultiput%280%2C0%29%281%2C0%29%7B10%7D%7B%5Cline%280%2C1%29%7B10%7D%7D+%0A++%5Cmultiput%280%2C0%29%280%2C1%29%7B10%7D%7B%5Cline%281%2C0%29%7B10%7D%7D%0A++%5Clinethickness%7B0.5mm%7D%0A++%5Cmultiput%280%2C0%29%285%2C0%29%7B3%7D%7B%5Cline%280%2C1%29%7B10%7D%7D%0A++%5Cmultiput%280%2C0%29%280%2C5%29%7B3%7D%7B%5Cline%281%2C0%29%7B10%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad prostředí LaTeX picture s příkazem \multiput](/files/0679b3fc58f6e46968a993be9367b5a01b1266cb)

### Další příklady

#### Základní Bézierova křivka

Následující příklad používá `\qbezier` příkaz k vykreslení Bézierovy křivky:

```latex
\qbezier(1,1)(5,5)(9,0.5)
```

Všimněte si následujícího:

* webových stránkách `\qbezier` příkaz se nepoužívá v rámci `\put` příkaz
* počáteční bod Bézierovy křivky je `(1,1)`
* koncový bod Bézierovy křivky je `(9,0.5)`
* řídicí bod Bézierovy křivky je `(5,5)`
* nepoužíváme volitelné celé číslo, které určuje počet bodů použitých k vykreslení/vytvoření Bézierovy křivky

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.8cm}
\begin{picture}(10,5)
\thicklines
\qbezier(1,1)(5,5)(9,0.5)
\put(2,1){{Bézierova křivka}}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=multiput+command+picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.8cm%7D%0A%5Cbegin%7Bpicture%7D%2810%2C5%29%0A%5Cthicklines%0A%5Cqbezier%281%2C1%29%285%2C5%29%289%2C0.5%29%0A%5Cput%282%2C1%29%7B%7BB%C3%A9zier+curve%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Kreslení Bézierovy křivky pomocí LaTeXu](/files/f4be8b99c4b90da9f00ac6a1673a19eb38a0e7c2)

#### Oválné útvary, čáry a kružnice

Následující příklad demonstruje `\line`, `\circle` a `\oval` příkazy a—všimněte si, jak *jste* všechny použity v rámci `\put{...}` příkazu:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\thicklines
\begin{picture}(10,6)
\put(2,2.2){\line(1,0){6}}
\put(2,2.2){\circle{2}}
\put(6,2.2){\oval(4,2)[r]}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=picture+environment+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cthicklines%0A%5Cbegin%7Bpicture%7D%2810%2C6%29%0A%5Cput%282%2C2.2%29%7B%5Cline%281%2C0%29%7B6%7D%7D%0A%5Cput%282%2C2.2%29%7B%5Ccircle%7B2%7D%7D%0A%5Cput%286%2C2.2%29%7B%5Coval%284%2C2%29%5Br%5D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad prostředí LaTeX picture](/files/a5ac230870997227fea3afece0eee8e4bcab6f5d)

Níže je popis příkazů:

* `\put(2,2.2){\line(1,0){6}}`: vykreslí čáru `6` jednotek dlouhou pomocí „směrového vektoru“ `(1,0)`
* `\put(6,2.2){\oval(4,2)[r]}`: vykreslí ovál se středem v bodě `(4,2)`. Parametr `[r]` je volitelný, můžete použít `r`, `l`, `t` a `b` k zobrazení pravé, levé, horní nebo dolní části oválu.
* `\put(2,2.2){\circle{2}}`: vykreslí kružnici se středem v bodě `(2,2.2)` a jejíž průměr je `2`.

#### Kombinování čar, kružnic a textu

Různé základní prvky lze kombinovat a vytvářet tak složitější obrázky. V tomto příkladu jsou několik čar a kružnic zkombinovány do obrázku spolu s textem pro popis bodů:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.8cm}
\begin{picture}(12,4)
\thicklines
\put(8,3.3){{\footnotesize $3$-simplex}}
\put(9,3){\circle*{0.1}}
\put(8.3,2.9){$a_2$}
\put(8,1){\circle*{0.1}}
\put(7.7,0.5){$a_0$}
\put(10,1){\circle*{0.1}}
\put(9.7,0.5){$a_1$}
\put(11,1.66){\circle*{0.1}}
\put(11.1,1.5){$a_3$}
\put(9,3){\line(3,-2){2}}
\put(10,1){\line(3,2){1}}
\put(8,1){\line(1,0){2}}
\put(8,1){\line(1,2){1}}
\put(10,1){\line(-1,2){1}}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=understanding+picture+dimensions+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.8cm%7D%0A%5Cbegin%7Bpicture%7D%2812%2C4%29%0A%5Cthicklines%0A%5Cput%288%2C3.3%29%7B%7B%5Cfootnotesize+%243%24-simplex%7D%7D%0A%5Cput%289%2C3%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%288.3%2C2.9%29%7B%24a_2%24%7D%0A%5Cput%288%2C1%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%287.7%2C0.5%29%7B%24a_0%24%7D%0A%5Cput%2810%2C1%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%289.7%2C0.5%29%7B%24a_1%24%7D%0A%5Cput%2811%2C1.66%29%7B%5Ccircle%2A%7B0.1%7D%7D%0A%5Cput%2811.1%2C1.5%29%7B%24a_3%24%7D%0A%5Cput%289%2C3%29%7B%5Cline%283%2C-2%29%7B2%7D%7D%0A%5Cput%2810%2C1%29%7B%5Cline%283%2C2%29%7B1%7D%7D%0A%5Cput%288%2C1%29%7B%5Cline%281%2C0%29%7B2%7D%7D%0A%5Cput%288%2C1%29%7B%5Cline%281%2C2%29%7B1%7D%7D%0A%5Cput%2810%2C1%29%7B%5Cline%28-1%2C2%29%7B1%7D%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad prostředí LaTeX picture](/files/9dd0d238ad419d51da944a6ff0d95c44b0d9a7c1)

Zde je souhrn některých použitých příkazů:

* `\thicklines`: tím se zvýší tloušťka čar. Příkaz `\thinlines` má opačný účinek.
* `\put(8,3.3){{\footnotesize $3$-simplex}}`: text „3-simplex“ se vloží v bodě `(8,3.3)`, velikost písma se nastaví na `\footnotesize`. Stejný příkaz se používá k popisu každého bodu.
* `\put(9,3){\circle*{0.1}}`: vykreslí vyplněnou kružnici se středem v `(9,3)` a s malým průměrem `0.1` (kreslicí jednotky), takže ji lze použít jako bod.
* `\put(10,1){\line(3,2){1}}`: vytvoří přímku začínající v `(10,1)` a vykreslenou ve směru `(3,2)` o délce 1 (kreslicí jednotky).

#### Použití šipek

Šipky lze také použít uvnitř `picture` prostředí, takže zde je druhý příklad:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.20mm}
\begin{picture}(400,250)
\put(75,10){\line(1,0){130}}
\put(75,50){\line(1,0){130}}
\put(75,200){\line(1,0){130}}
\put(120,200){\vector(0,-1){150}}
\put(190,200){\vector(0,-1){190}}
\put(97,120){$\alpha$}
\put(170,120){$\beta$}
\put(220,195){horní stav}
\put(220,45){dolní stav 1}
\put(220,5){dolní stav 2}
\end{picture}
\end{document}
```

[Otevřete tento příklad v Overleafu](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+arrows+in+LaTeX+picture+environment\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5Bpdftex%5D%7Bpict2e%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B0.20mm%7D%0A%5Cbegin%7Bpicture%7D%28400%2C250%29%0A%5Cput%2875%2C10%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%2875%2C50%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%2875%2C200%29%7B%5Cline%281%2C0%29%7B130%7D%7D%0A%5Cput%28120%2C200%29%7B%5Cvector%280%2C-1%29%7B150%7D%7D%0A%5Cput%28190%2C200%29%7B%5Cvector%280%2C-1%29%7B190%7D%7D%0A%5Cput%2897%2C120%29%7B%24%5Calpha%24%7D%0A%5Cput%28170%2C120%29%7B%24%5Cbeta%24%7D%0A%5Cput%28220%2C195%29%7Bupper+state%7D%0A%5Cput%28220%2C45%29%7Blower+state+1%7D%0A%5Cput%28220%2C5%29%7Blower+state+2%7D%0A%5Cend%7Bpicture%7D%0A%5Cend%7Bdocument%7D)

Tento příklad vytvoří následující výstup:

![Příklad šipek v prostředí LaTeX picture](/files/4ef20f410119d60ecb409fd69bf0172cf821083a)

Ta `\vector` příkaz používá stejnou syntaxi jako `\line`:

* `\put(120,200){\vector(0,-1){150}}`: vykreslí vektor, jehož počáteční bod je `(120,200)`, délka je `150` a směr kreslení je `(0,-1)`.

## Další čtení

Pro více informací viz následující zdroje:

* [Neoficiální referenční příručka LaTeX2e](https://latexref.xyz/picture.html)
* [Nepříliš krátký úvod do LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (viz kapitola 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [otázky označené `picture-mode` na tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` dokumentace balíčku](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)
* [Balíček TikZ](/latex/cs/obrazky-a-tabulky/05-tikz-package.md)
* [balíček Pgfplots](/latex/cs/pro-konkretni-obor/08-pgfplots-package.md)
* [Umísťování obrázků a tabulek](/latex/cs/obrazky-a-tabulky/02-positioning-images-and-tables.md)
* [Seznamy tabulek a obrázků](/latex/cs/obrazky-a-tabulky/03-lists-of-tables-and-figures.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/cs/obrazky-a-tabulky/04-picture-environment.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
