Seite 1 von 1

Tikz: Erstellen einer Node für Wertstromanalyse

Verfasst: Fr 25. Mai 2012, 12:26
von Galtogrim
Hallo,
bisher habe ich in Latex Tikz zur Erstellung von Nodes verwendet, die ich in Flowcharts etc dann miteinander verbunden habe.
Zur Erstellung einer Wertstromanalyse muss ich nun Pfeile mit variablem Text erstellen, für die ich leider noch keine Vorlage finden konnte.
Somit nun meine Idee, diese selbst zu zeichen.
Mit Hilfe der Vorlage
Vorlage von Matheplanet
habe ich nun ein kleines Konstrukt erstellt.
Leider gelingt es mir nicht den Text (ABC,bzw. DEF) zu zentrieren,umbrechbar (wenn er länger ist) zu gestalten, etc. . Leider sortiert sich der Text immer nach unten rechts ans Ende des Blockes.

Hier mein Code:
\documentclass{scrartcl}

\usepackage{tikz}

\tikzset{baust/.style={inner sep=0pt}}


\newcommand*\Pfeil{%

                \begin{tikzpicture}%
                        \draw (0,0) -- (1,1) -- (0,2) -- (-3,2) -- (-2,1)  -- (-3,0) -- (0,0);%
                        \fill[fill=yellow] (0,0) -- (1,1) -- (0,2) -- (-3,2) -- (-2,1) node[xshift=1cm] {ABC soll hier hin und innerh. umbr.} -- (-3,0) -- (0,0);%
                \end{tikzpicture}%

}

\begin{document}
\begin{tikzpicture}

        \node[baust](one) {\Pfeil{ABC}};
        \node[baust, below of=one, yshift=-2cm](two) {\Pfeil{DEF}}; % hier soll DEF rein

\end{tikzpicture}
\end{document}
Über Hilfe bin ich Dankbar! Gegebenenfalls besetht auch schon ein Template, dann übernehme ich auch gerne dies.

Gruß
Galto

Verfasst: Fr 25. Mai 2012, 14:32
von esdd
Hallo,

in jedem Fall musst du bei \newcommand\Pfeil... angeben, dass du ein Argument übergeben möchtest, dass dann in der Node ausgegeben werden soll.
In der tikzlibrary shapes.symbols ist die Form signal definiert, die sich gut für deinen Wunsch verwenden lässt. Hier sind mal ein paar Vorschläge. Was davon für dich sinnvoll ist, hängt davon ab, wie der umgebrochene Text ausgerichtet sein soll (zentriert oder linksbündig) und was gemacht werden soll, wenn der Text mal noch länger ist.
\documentclass{scrartcl}

\usepackage[ngerman]{babel}
\usepackage{tikz}
\usetikzlibrary{shapes.symbols}% fuer shape=signal

\tikzset{baust/.style={inner sep=0pt}}

\newcommand*\Pfeil[1]{%
\begin{tikzpicture}%
  \draw[fill=yellow] (1,-1) -- (2,0) -- (1,1) -- (-2,1) -- (-1,0)  -- (-2,-1) -- cycle;%
  \node[outer sep=0pt,inner sep=0.5mm,text width=1.9cm,align=center]{#1};%
\end{tikzpicture}%
}

\newcommand*\PfeilA[2][center]{%
  \tikz\node[draw,fill=yellow,outer sep=0pt,minimum width=4cm,minimum height=2cm,%
        shape=signal,signal from=west,%
        inner sep=0.5mm,text width=1.9cm,align=#1]{#2};%
}

\newcommand*\PfeilL[2][1.9cm]{%
  \tikz\node[draw,fill=yellow,outer sep=0pt,minimum width=4cm,minimum height=2cm,%
        shape=signal,signal from=west,%
        inner sep=0.5mm,text width=#1]{#2};%
}

\newcommand*\PfeilC[2][1.9cm]{%
  \tikz\node[draw,fill=yellow,outer sep=0pt,minimum width=4cm,minimum height=2cm,%
        shape=signal,signal from=west,%
        inner sep=0.5mm,text width=#1,align=center]{#2};%
}

\begin{document}
\begin{tikzpicture}

  \node[baust](one) {\Pfeil{ABC soll hier hin und innerh. umgebr.}}; 
  \node[baust, below of=one, yshift=-2cm](two) {\Pfeil{DEF}};
  %moegliche Alternative
  \node[baust, left of=one, xshift=6cm](three) {\PfeilA[left]{ABC soll hier hin und innerhalb umgebrochen werden}}; 
  \node[baust, below of=three, yshift=-2cm](four) {\PfeilA{DEF}};
  %weitere Alternative
  \node[baust, left of=three, xshift=6cm](five) {\PfeilL[2.5cm]{ABC soll hier hin und innerhalb umgebrochen werden}}; 
  \node[baust, below of=five, yshift=-2cm](six) {\PfeilC{DEF}};


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

Verfasst: Fr 25. Mai 2012, 14:55
von Galtogrim
Hallo,
vielen Dank!

Padavan noch viel zu lernen hat. Die Lösung ist ja genial.
Shape=signal gefällt mir sehr gut.

Kann leider die Übersicht über die Shapes nicht finden. Google hilft in dem Fall leider nicht weiter. Hast du eine solche Übersicht?
Genau das hatte ich gesucht.

Danke nochmals!

Gruß
Galto

P.S. Danach kann geschlossen werden ;)

Verfasst: Fr 25. Mai 2012, 15:14
von esdd
Hallo,

das kann man alles im pgfmanual finden.

Grüße
Elke

Edit: Für die shapes ist Kapitel 48 Shape Library interessant.

Verfasst: Fr 25. Mai 2012, 16:28
von Galtogrim
Hallo,

erneut ein Dankeschön von mir!
Da hab ich tatsächlich drin gesucht. Aber dies leider übersehen :(
Ich Depp.

Wünsche frohe Pfingsttage.

Gruß
Galto