Re: Problemi con le frecce curve in tikz

#74810
Up
0
Down
::

Bresciani” post=73954Salve,

ho un problema con tikz. Ho bisogno di un diagramma con una freccia curva, che parta dalla fine di una linea e ricominci nella linea successiva. Ho usato quindi

`edge[out=0, in=180]`

per far si che la freccia curvi. Il risultato è esattamente quello desiderato, tranne che per il fatto che, nel momento in cui inserisco quell’opzione, il diagramma si sposta sulla destra del foglio, nonostante l’ambiente center. Qualcuno ha idea di come potrei sistemare? Di seguito il codice completo del diagramma.

`
\begin{center}
\begin{tikzpicture}[description/.style={fill=white,inner sep=2pt}]
\matrix (m) [matrix of math nodes, row sep=3em,
column sep=2em, text height=2ex, text depth=0.5ex]
{ 0 & \pi_k(X_{k+1}) & \pi_k(X_k) \\
\pi_{k-1}(\Omega K(\pi_k(X_k) ,k-1)) & \pi_{k-1}(X_{k+1}) & 0 \\};
\draw[->,font=\scriptsize ]
(m-1-1) edge node[auto] {} (m-1-2)
(m-1-2) edge node[auto] {$p_*$} (m-1-3)
(m-2-1) edge node[auto] {$i_*$} (m-2-2)
(m-2-2) edge node[auto] {} (m-2-3)
(m-1-3) edge[out=0, in=180] node[auto] {$\de$} (m-2-1);
\end{tikzpicture}
\end{center}
`

Quando TikZ disegna frecce curve non sempre riesce a stabilire correttamente la loro “bounding box”. Disegna il diagramma in due fasi e usa la prima per stabilire la bounding box; le parti curve della freccia saranno fuori, ma non dovrebbe essere un problema, visto che centri il tutto.
`\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usepackage{kantlipsum}
\begin{document}
\kant*[1]
\begin{center}
\begin{tikzpicture}[description/.style={fill=white,inner sep=2pt}]
\matrix (m) [matrix of math nodes, row sep=3em,
column sep=2em, text height=2ex, text depth=0.5ex]
{ 0 & \pi_k(X_{k+1}) & \pi_k(X_k) \\
\pi_{k-1}(\Omega K(\pi_k(X_k) ,k-1)) & \pi_{k-1}(X_{k+1}) & 0 \\};
\draw[->,font=\scriptsize,use as bounding box]
(m-1-1) edge node[auto] {} (m-1-2)
(m-1-2) edge node[auto] {$p_*$} (m-1-3)
(m-2-1) edge node[auto] {$i_*$} (m-2-2)
(m-2-2) edge node[auto] {} (m-2-3) ;
\draw [->,font=\scriptsize]
(m-1-3) edge[out=0, in=180] node[auto] {$d$} (m-2-1);
\end{tikzpicture}
\end{center}
\kant[2]
\end{document}`
Per favore, cerca di fare in modo che gli esempi siano compilabili (altrimenti occorre tirare a indovinare che cosa serve). Il tuo [tt]\de[/tt] è diventato [tt]d[/tt], dal momento che non ho la minima idea di che cosa indicasse.

Benvenuto/benvenuta!

Ciao
Enrico

Go to top