Wie lässt sich der Versatz bei einer durchgehenden Form beseitigen?

Wie lässt sich der Versatz bei einer durchgehenden Form beseitigen?

Ich wollte der letzten Form einer Kette etwas hinzufügen (siehe Bild zum besseren Verständnis). Ich stieß jedoch auf ein unerwartetes Problem, da ich dachte, die (schwarzen und roten) Linien würden sich ohne vertikalen Versatz verbinden. Meine Frage ist also (hoffentlich) einfach: Wie kann ich das beheben?

Danke im Voraus

\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,chains,shapes.symbols}

\begin{document}
    \tikzset{
        flowEnd/.style={draw, shape=signal, signal from=west, signal to=nowhere},
        flowPast/.style={draw, shape=signal, signal from=west},
        flowStart/.style={draw, shape=signal, signal to=east},
    }

    \begin{tikzpicture}[start chain=going right,node distance=2mm]
    \node [flowStart,on chain] {Hello};
    \node [flowPast,on chain] {World};
    \node (end) [flowEnd,on chain] {!};
    \draw [red]
    let \p1=(end.south east), \p2=(end.north east) in 
    (\p2) --
    ($ (\p2) + (10mm,0) $) [rounded corners]--
    ($ (\p1) + (10mm,0) $) --
    (\p1);
    \end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

Antwort1

In der Shapes-Stildefinition sollten Sie outer sep=0ptcommon hinzufügen und definieren minimum height=.... Der vollständige, etwas vereinfachte Code für Ihr Bild lautet:

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{calc,
                chains,
                shapes.symbols}

\tikzset{
     base/.style = {draw, shape=signal, on chain, 
                    minimum height=3ex, outer sep=0pt},
  flowEnd/.style = {base, signal from=west, signal to=nowhere},
 flowPast/.style = {base, signal from=west},
flowStart/.style = {base, signal to=east},
        }
\begin{document}
    \begin{tikzpicture}[
    start chain = going right,
  node distance = 2mm   ]
%
\node [flowStart] {Hello};
\node [flowPast] {World};
\node (end) [flowEnd] {!};
%
\draw[red]
   (end.north east) -- ++ (10mm,0) [rounded corners] |- (end.south east);
    \end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen