Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2
tikzmath-Variante ergänzt

12 Nov '15, 08:02

stefan's gravatar image

stefan
18.4k163148

Eine Möglichkeit ist `ifthenelse` als mathematische Funktion. \documentclass{article} \usepackage{tikz} \newcommand{\test}{% \pgfmathparse{ ifthenelse(\n==1,"eins", ifthenelse(\n==2,"zwei", ifthenelse(\n==3,"drei", "was anderes"))} \pgfmathresult} \begin{document} \begin{tikzpicture} \foreach \n in {1,...,4} \node at (0,-\n) {\test}; \end{tikzpicture} \end{document} Die Fallunterscheidung lässt sich in `\pgfmathparse` noch kürzer schreiben: \pgfmathparse{ \n==1 ? "eins" : (\n==2 ? "zwei" : (\n==3 ? "drei" : "was anderes"))} Ausgabe des Beispiels: ![Ausgabe][1] Eine alternative if ... then ... else ... Syntax bietet `tikzmath`: \usetikzlibrary{math} \newcommand{\test}{% \tikzmath{ if \n==1 then { let \ausgabe = eins;} else { if \n==2 then { let \ausgabe = zwei;} else { let \ausgabe = was anderes; }; }; }% \ausgabe} [1]: http://texwelt.de/wissen/upfiles/if-then-else.pnghttp://texwelt.de/wissen/upfiles/if-then-else.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

12 Nov '15, 07:50

stefan's gravatar image

stefan
18.4k163148

Eine Möglichkeit ist `ifthenelse` als mathematische Funktion. \documentclass{article} \usepackage{tikz} \newcommand{\test}{% \pgfmathparse{ ifthenelse(\n==1,"eins", ifthenelse(\n==2,"zwei", ifthenelse(\n==3,"drei", "was anderes"))} \pgfmathresult} \begin{document} \begin{tikzpicture} \foreach \n in {1,...,4} \node at (0,-\n) {\test}; \end{tikzpicture} \end{document} Die Fallunterscheidung lässt sich in `\pgfmathparse` noch kürzer schreiben: \pgfmathparse{ \n==1 ? "eins" : (\n==2 ? "zwei" : (\n==3 ? "drei" : "was anderes"))} Ausgabe des Beispiels: ![Ausgabe][1] [1]: http://texwelt.de/wissen/upfiles/if-then-else.png