Seite 1 von 1

Flowchart Rückführung

Verfasst: Di 23. Feb 2016, 12:05
von icecoldkilla
Hallo zusammen,
ich brauche eine kurze Hilfe um ein Flowchart zu erstellen.
Und zwar möchte ich von einer unteren node einen Pfeil zu einer oberen node haben, aber dieser soll nicht direkt gehen sondern über eine Ecke. Aus diesem Grund habe ich eine node rechts neben der oberen node platziert. Wenn ich das so verbinde habe ich zwei Probleme:
Eine Pfeilspitze zur unsichtbaren node und auch einen Abstnad zum folgenden Pfeil.

Kann mir hier wer weiterhelfen?


\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}

\begin{document}

	\tikzstyle{decision} = [draw]	
	\tikzstyle{line} = [draw, -latex']
	
	\begin{tikzpicture}[node distance = 2cm, auto]
	\node [decision] (while) {While};
	\node [right of=while] (hilfe) {};
	\node [decision, below of=while] (unterehw) {test};

	\path [line] (while) -- (unterehw);
	\path [line] (unterehw) -| (hilfe);
	\path [line] (hilfe) -- (while);

	\end{tikzpicture}
	
	
\end{document}

Verfasst: Di 23. Feb 2016, 14:59
von esdd
Zeichne die Linie entweder über (hilfe.center) oder definiere (hilfe) statt als Node gleich nur als Koordinate. Das Zeichnen der zusätzlichen Pfeilspitze könntest Du verhindern in dem Du für den ersten Teil entweder line,- verwendest. Du kannst aber die gesamte Linie einfach am Stück zeichnen lassen, dann wird auch nur eine Pfeilspitze eingefügt.
\documentclass{article} 
\usepackage[latin1]{inputenc} 
\usepackage{tikz} 
\usetikzlibrary{shapes,arrows} 
\tikzset{
  decision/.style=draw,
  line/.style={draw,-latex'}
}

\begin{document} 
    \begin{tikzpicture}[node distance = 2cm, auto] 
    \node [decision] (while) {While}; 
    \coordinate [right of=while] (hilfe); 
    \node [decision, below of=while] (unterehw) {test}; 

    \path [line] (while) -- (unterehw); 
    \path [line,-] (unterehw) -| (hilfe)--(while); 

    \end{tikzpicture}
\end{document}
Gruß
Elke

Verfasst: Di 23. Feb 2016, 15:06
von icecoldkilla
Vielen Dank dir Elke,

ich habe vor 5 Minuten in den tiefen des Internets doch noch was dazu gefunden, es wird doch so gemacht:
\path [line] (unterehw) -| ([xshift=2cm] while.east) -- (while.east);
Auf jeden Fall, vielen Dank für die Bemühung :)