PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [TikZ] Warum geht Zeichnung in den Text rein?



Hobbes
28-02-2008, 18:16
Hi allerseits,

ich mache gerade die ersten Gehversuche mit TikZ. Bei dem unten angegebenen Beispiel habe ich das Problem, dass die Zeichnung zu weit oben beginnt und in den Text reingeht. Woran liegt das? Wie kann ich das beheben?

Und außerdem hätte ich gerne einen Verbesserungsvorschlag für die beiden oberen Pfeile (der Rückführende und der Senkrechte). Das ist sicher noch nicht optimal, wie ich es gelöst habe.

Gruß
Hobbes


\documentclass{scrartcl}

\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{arrows,shapes}
\tikzstyle{rechteck} = [draw, thin,minimum height=3em, minimum width=2em]
\tikzstyle{kreis} = [circle, draw, thin]
\begin{document}
Hier ist Text
\begin{center}
\begin{tikzpicture}
[node distance=1.5cm, auto,>=latex', thick]
\path[use as bounding box] (-1,0) rectangle (10,-2);
\path[->] node[rechteck](r1) {$r_1$};
\path[->] node[kreis,right of=r1] (plus) {+}
(r1) edge (plus);
\path[->] node[rechteck,right of=plus] (r2) {$r_2$}
(plus) edge (r2);
\path[->] node[rechteck,right of=r2] (r3) {$r_3$}
(r2) edge (r3);
\path[->, draw] (r3) -| ++(1,1) -| (-1,0) -- (r1);
\path[->, draw] (plus) ++ (0,1) -- (plus);
% \path node [above of=plus] (a) {d};
% \path[->, draw] (a) -- (plus);
\end{tikzpicture}
\end{center}
\end{document}

Stefan_K
28-02-2008, 18:27
Hallo Hobbes,

das Überlappen kannst Du verhindern, indem Du die Koordinaten etwas anders wählst, z.B.
\path[use as bounding box] (-1,0) rectangle (10,2); mit 2 statt -2. Oder Du gleichst es mit \vspace{Abstand} zwischen Text und Bild aus.

Viele Grüße,

Stefan

Hobbes
28-02-2008, 23:16
Aha, dafür ist diese Zeile also unter anderem da. Wofür brauche ich diese Zeile überhaupt? Die war in dem Beispiel drin, das ich als Vorlage genommen habe. Aber auch ohne diese Zeile funktioniert es?!?

Stefan_K
28-02-2008, 23:39
Hallo Hobbes,

in der Doku (http://www.ctan.org/tex-archive/graphics/pgf/base/doc/generic/pgf/pgfmanual.pdf) steht dazu etwas z.B. im Abschnitt 57.5 Using a Path as a Bounding Box.
Sowas kann schonmal passieren, wenn man eine Vorlage nimmt, ohne jeden einzelnen Befehl zu hinterfragen. ;)

Viele Grüße,

Stefan

Hobbes
28-02-2008, 23:54
Danke, das werde ich mir morgen mal in Ruhe anschauen :)