> 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/it/figure-e-tabelle/04-picture-environment.md).

# Disegnare diagrammi direttamente in LaTeX

## Introduzione

integrato in LaTeX `picture` può essere usato per creare diagrammi/figure—non devi *hanno più bisogno* caricare alcun pacchetto esterno per usarlo, ma pacchetti come [`pict2e`](https://ctan.org/pkg/pict2e?lang=en) e [`picture`](https://ctan.org/pkg/picture) sono stati scritti per ampliare o migliorare le sue funzionalità.

Questo articolo fornisce una breve introduzione al `picture` ambiente e tutti gli esempi usano il [`pict2e` pacchetto](https://ctan.org/pkg/pict2e?lang=en). Una documentazione più estesa e una serie di esempi utili sono facilmente disponibili nelle seguenti risorse:

* [manuale di riferimento non ufficiale di LaTeX2e](https://latexref.xyz/picture.html)
* [La non troppo breve introduzione a LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (vedi il Capitolo 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [domande contrassegnate con `picture-mode` su tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` documentazione del pacchetto](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)

Se confrontato con strumenti grafici potenti e sofisticati come [TikZ/PGF](https://en.wikipedia.org/wiki/PGF/TikZ), [MetaPost](https://tug.org/metapost.html), [PSTricks](https://ctan.org/topic/pstricks?lang=en) o [Asymptote](https://ctan.org/pkg/asymptote?lang=en) il `picture` l'ambiente può sembrare piuttosto limitato ma, di tanto in tanto, potrebbe essere sufficiente per ciò che devi fare.

## Creare una nuova figura

Creare una nuova figura di solito comporta i seguenti passaggi:

1. definire la dimensione delle unità di disegno che desideri usare;
2. dichiarare un `picture` ambiente che definisce la dimensione della figura;
3. disegnare i singoli componenti grafici usando i `\put`, `\multiput` o `\qbezier` comandi.

### Definisci la dimensione delle unità di disegno

Per creare una figura di solito inizi impostando le *unità di disegno* tramite il comando `\unitlength`, che deve essere usato fuori da un `picture` ambiente. Per esempio, se scrivi

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

le unità di disegno verrebbero interpretate come multipli di 1 cm. L'unità predefinita è 1 pt.

### Definisci la dimensione della tua figura

La forma generale dell' `picture` ambiente è la seguente

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

dove

* `width` e `altezza` sono valori, in unità di `\unitlength`, che definiscono la dimensione della figura. LaTeX usa questi valori per creare un riquadro le cui dimensioni sono
  * larghezza del riquadro (figura) = `width` × `\unitlength`
  * altezza del riquadro (figura) = `altezza` × `\unitlength`
* `(Xoffset, Yoffset)` è una coordinata opzionale che imposta l'origine (angolo inferiore sinistro) della figura, espressa come un *scostamento* rispetto alla posizione predefinita. `Xoffset` e `Yoffset` sono anch'essi espressi in unità determinate dal valore attuale di `\unitlength`.

Nota che `Xoffset` e `Yoffset` non influiscono sulla quantità di spazio che LaTeX riserva; cioè, sulle dimensioni del riquadro.

#### Comprendere le dimensioni della figura

Creeremo due figure, entrambe usando `\setlength{\unitlength}{1cm}` e ciascuna con una `width` e `altezza` di 3 unità.

La prima figura usa l'origine predefinita di `(0,0)`:

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

la seconda figura sposta l'origine di `(1,1)`:

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

### Disegnare grafica

La grafica viene creata usando una sequenza di `\put`, `\multiput`, o `\qbezier` comandi che producono i singoli “componenti” (o “oggetti”) da cui la figura o l'illustrazione è costruita:

* `\put(x, y){*component*}` disegna il `*component*` nella posizione `(x, y)`.
* `\multiput(x, y)(dx, dy){n}{*component*}` disegna il `*component*` `n` volte: partendo dalla posizione `(x, y)` e traslando ripetutamente di `(dx, dy)` per ridisegnare il `*component*`.
* `\qbezier[n](x<sub>1</sub>, y<sub>1</sub>)(x, y)(x<sub>2</sub>, y<sub>2</sub>)`: disegna una [curva di Bézier quadratica](https://en.wikipedia.org/wiki/B%C3%A9zier_curve#Quadratic_B%C3%A9zier_curves) dove:
  * `n` un intero opzionale che determina il numero di punti usati per tracciare/produrre la curva
  * `(x<sub>1</sub>, y<sub>1</sub>)` è il punto iniziale della curva
  * `(x<sub>2</sub>, y<sub>2</sub>)` è il punto finale della curva
  * `(x, y)` indica il punto di controllo della curva di Bézier (quadratica)

Un `*component*` è un elemento grafico solitamente prodotto usando primitive grafiche come `\line`, `\oval`, `\circle`, `\vector` e così via—vedi il [manuale di riferimento non ufficiale di LaTeX2e](https://latexref.xyz/picture.html) o [La non troppo breve introduzione a LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (Capitolo 5) per i dettagli delle primitive disponibili.

**Nota**: Il [`pict2e` pacchetto](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf) estende l'originale `picture` ambiente per fornire diversi comandi per disegnare curve di Bézier: `\bezier`, `\qbezier`, `\cbezier` e `\qbeziermax`.

### Comprendere lo scostamento e l'origine

Nei seguenti esempi il `\put` comando viene usato per disegnare punti colorati che indicano coordinate chiave (posizioni) nella grafica. Entrambi gli esempi usano il comando `\fbox` per disegnare un bordo attorno al riquadro creato da LaTeX per contenere la nostra figura, mostrando il *riquadro di delimitazione* della grafica.

**Esempio 1: uso dell'origine predefinita**

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

Questa è la mia figura\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}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![dimensioni dell'ambiente picture di LaTeX](/files/8ac5a0baacaf39a4025d6e323418cbc471c6b3cf)

La `\fbox` comando disegna un bordo attorno al riquadro di delimitazione della grafica, mostrando lo spazio (area) riservato da LaTeX:

* larghezza della figura = `width` × `\unitlength` = 3 × 1cm = 3cm.
* altezza della figura = `altezza` × `\unitlength` = 3 × 1cm = 3cm.

Il primo esempio mostra che l'origine, `(0,0)`, è nel punto in cui il `\begin{picture}` comando è stato eseguito, immediatamente dopo il testo “This is my picture”. Inoltre, l'angolo in alto a destra si trova nella posizione `(3,3)`, la `(width,height)` valori forniti a `\begin{picture}(3,3)`.

**Esempio 2: spostamento dell'origine di (1,1)**

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

Questa è la mia figura\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}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![dimensioni dell'ambiente picture di LaTeX](/files/6a39120e085089c4273c5301cda92cae88a2367d)

Il secondo esempio mostra gli effetti dello spostamento dell'origine e mette in evidenza alcuni punti chiave:

* il bordo creato da `\fbox` mostra che il riquadro di delimitazione della grafica, la larghezza e l'altezza del riquadro creato da LaTeX, è *invariato* dallo spostamento dell'origine: è ancora determinato da `(width,height)` valori forniti a `\begin{picture}(3,3)(1,1)`
  * larghezza della figura = `width` × `\unitlength` = 3 × 1cm = 3cm
  * altezza della figura = `altezza` × `\unitlength` = 3 × 1cm = 3cm
* gli elementi grafici non sono limitati (ritagliati) all'area (dimensioni del riquadro di delimitazione) creata da LaTeX. Per esempio, il punto blu e `(0,0)` la coordinata sono disegnati fuori dalla linea di confine prodotta da `\fbox`, che indica il riquadro di delimitazione.
  * Spetta all'utente assicurarsi che gli elementi grafici rimangano all'interno del riquadro di delimitazione e non sovrappongano alcun testo circostante.
* l'origine, `(0,0)`, è *non più* situata immediatamente dopo il testo “This is my picture”, nel punto in cui il `\begin{picture}` comando è stato eseguito: l'origine è ora spostata di 1 unità a sinistra e 1 unità verso il basso
* l'angolo in alto a destra si trova ora nella posizione `(4,4)`

## Esempi dell'ambiente picture

### Esempi tratti dal manuale di riferimento non ufficiale di LaTeX2e

La [manuale di riferimento non ufficiale di LaTeX2e](https://latexref.xyz/picture.html) contiene diversi `picture` esempi dell'ambiente, alcuni dei quali sono riprodotti qui insieme a link che li aprono in Overleaf, consentendoti di modificare ed esplorare il codice.

#### Esempio 1: il comando \vector

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(6,6)      % il riquadro della figura sarà largo 6 cm e alto 6 cm
  \put(0,0){\vector(2,1){4}}  % per ogni 2 unità in orizzontale questo vettore sale di 1
    \put(2,1){\makebox(0,0)[l]{\ prima tappa}}
  \put(4,2){\vector(1,2){2}}
    \put(5,4){\makebox(0,0)[l]{\ seconda tappa}}
  \put(0,0){\vector(1,1){6}}
    \put(3,3){\makebox(0,0)[r]{somma\ }}
\end{picture}
\end{document}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio dell'ambiente picture](/files/cd44e363506d6e7b31db1f5f4d64e71873f758e5)

#### Esempio 2: i comandi \qbezier, \line, \vector, \thinlines e \thicklines

Si noti come il `\qbezier` comando *non viene* usato all'interno di `\put{...}` mentre altri comandi primitivi, come `\line`, `\vector` *sei* usato all'interno di `\put{...}`.

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{picture}(8,4)
  \thinlines % Inizia con linee sottili
  \put(0,0){\vector(1,0){8}}  % asse x
  \put(0,0){\vector(0,1){4}}  % asse y
  \put(2,0){\line(0,1){3}}    % lato sinistro
  \put(4,0){\line(0,1){3.5}}  % lato destro
  \thicklines % Usa linee più spesse per i comandi \qbezier
  \qbezier(2,3)(2.5,2.9)(3,3.25)
  \qbezier(3,3.25)(3.5,3.6)(4,3.5)
  \thinlines % Torna a usare linee sottili
  \put(2,3){\line(4,1){2}}
  \put(4.5,2.5){\framebox{Regola trapezoidale}}
\end{picture}
\end{document}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio dell'ambiente picture di LaTeX](/files/9fb0f4425e5d94ecc5f91c097a823dd9da69e836)

#### Esempio 3: i comandi \multiput e \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}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio dell'ambiente picture di LaTeX con il comando \multiput](/files/d6b19a27d6fe2cebe8649050693a60da618155dd)

### Altri esempi

#### Una curva di Bézier di base

L'esempio seguente utilizza il `\qbezier` comando per disegnare una curva di Bézier:

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

Si noti quanto segue:

* il `\qbezier` comando non viene usato all'interno di un `\put` comando
* il punto iniziale della curva di Bézier è `(1,1)`
* il punto finale della curva di Bézier è `(9,0.5)`
* il punto di controllo della curva di Bézier è `(5,5)`
* non usiamo l'intero opzionale che determina il numero di punti usati per tracciare/produrre la curva di Bézier

```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){{curva di Bézier}}
\end{picture}
\end{document}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Disegnare una curva di Bézier con LaTeX](/files/55de5657c1ed2289861eaee1aafb628423c1fb3a)

#### Ovali, linee e cerchi

L'esempio seguente dimostra i `\line`, `\circle` e `\oval` comandi e—si noti come essi *sei* tutti usati all'interno del `\put{...}` comando:

```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}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio dell'ambiente picture di LaTeX](/files/bc102487751bbe59401f691e7db23e73633f4892)

Di seguito una descrizione dei comandi:

* `\put(2,2.2){\line(1,0){6}}`: disegna una linea `6` unità di lunghezza usando il “vettore direzionale” `(1,0)`
* `\put(6,2.2){\oval(4,2)[r]}`: disegna un ovale centrato nel punto `(4,2)`. Il parametro `[r]` è opzionale, puoi usare `r`, `l`, `t` e `b` per mostrare la parte destra, sinistra, superiore o inferiore dell'ovale.
* `\put(2,2.2){\circle{2}}`: disegna un cerchio centrato nel punto `(2,2.2)` e il cui diametro è `2`.

#### Combinare linee, cerchi e testo

Diversi elementi di base possono essere combinati per creare figure più complesse. In questo esempio varie linee e cerchi sono combinati per creare una figura, insieme a del testo per etichettare i punti:

```latex
\documentclass{article}
\usepackage[pdftex]{pict2e}
\begin{document}
\setlength{\unitlength}{0.8cm}
\begin{picture}(12,4)
\thicklines
\put(8,3.3){{\footnotesize $3$-simplesso}}
\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}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio dell'ambiente picture di LaTeX](/files/126fcf680b5b7600c2b0626890f1a227f0d2d147)

Ecco un riepilogo di alcuni comandi usati:

* `\thicklines`: questo aumenta lo spessore delle linee. Il `\thinlines` comando ha l'effetto opposto.
* `\put(8,3.3){{\footnotesize $3$-simplesso}}`: il testo “3-simplex” viene inserito nel punto `(8,3.3)`, la dimensione del carattere è impostata a `\footnotesize`. Lo stesso comando viene usato per etichettare ogni punto.
* `\put(9,3){\circle*{0.1}}`: disegna un cerchio pieno, centrato in `(9,3)` con un piccolo diametro di `0.1` (unità di disegno) in modo che possa essere usato come punto.
* `\put(10,1){\line(3,2){1}}`: crea una linea retta che parte da `(10,1)` e disegnata nella direzione di `(3,2)` con una lunghezza di 1 (unità di disegno).

#### Uso delle frecce

Le frecce possono essere usate anche all'interno di un `picture` ambiente, quindi ecco un secondo esempio:

```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){stato superiore}
\put(220,45){stato inferiore 1}
\put(220,5){stato inferiore 2}
\end{picture}
\end{document}
```

[Apri questo esempio in Overleaf](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)

Questo esempio produce il seguente output:

![Esempio di frecce nell'ambiente picture di LaTeX](/files/83330d111ad4ed23726931a317c5a17c3e124c31)

La `\vector` comando usa la stessa sintassi di `\line`:

* `\put(120,200){\vector(0,-1){150}}`: disegna un vettore il cui punto iniziale è `(120,200)`, la lunghezza è `150` e la direzione di disegno è `(0,-1)`.

## Letture aggiuntive

Per ulteriori informazioni, vedi le seguenti risorse:

* [manuale di riferimento non ufficiale di LaTeX2e](https://latexref.xyz/picture.html)
* [La non troppo breve introduzione a LaTeX2ε](https://tobi.oetiker.ch/lshort/lshort.pdf) (vedi il Capitolo 5)
* [Wikibooks](https://en.wikibooks.org/wiki/LaTeX/Picture)
* [domande contrassegnate con `picture-mode` su tex.stackexchange](https://tex.stackexchange.com/questions/tagged/picture-mode)
* [`pict2e` documentazione del pacchetto](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/pict2e/pict2e.pdf)
* [Pacchetto TikZ](/latex/it/figure-e-tabelle/05-tikz-package.md)
* [Pacchetto Pgfplots](/latex/it/specifico-per-argomento/08-pgfplots-package.md)
* [Posizionamento di immagini e tabelle](/latex/it/figure-e-tabelle/02-positioning-images-and-tables.md)
* [Elenchi di tabelle e figure](/latex/it/figure-e-tabelle/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/it/figure-e-tabelle/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.
