PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : tikz: Linie vertikal verschieben



Q-Dog
07-01-2010, 19:15
Guten Abend,

hätte eine simple Frage bzgl. Tikz und zwar möchte eine Linie vertikal verschieben.

Folgendes:
Ich habe 2 Nodes (z.B. Rechtecke) und verbinde diese ganz nomal mit

\draw (node_1.east) -- (node_2.west)
Jetzt möchte ich diese Linie nach oben oder unten verschieben (sie soll aber immernoch horizontal verlaufen!). Also bspw:

\draw (node_1.east) ++ (up:1cm) -- (node_2.west) ++ (up:1cm)

Der Anfangspunkt wird nach oben verschoben, der Endpunkt hingegen nicht mehr.
Ist es irgendwie möglich, 2 Sachen zusammenzufassen z.B. mit { } oder so?

\draw (node_1.east) ++ (up:1cm) -- {(node_2.west) ++ (up:1cm)}

Das funktioniert nämlich leider auch nicht.

Liebe Grüße,
Q-Dog

borose
08-01-2010, 14:00
hi,

mit tikzlibrary calc ist das ohne probleme möglich:




\documentclass{scrartcl}
\usepackage{tikz}
\usetikzlibrary{calc}

\begin{document}

\begin{tikzpicture}

\path node (node_1) {1} ++(2cm,0) node (node_2) {2};

\draw ($(node_1.east) + (0,1cm)$) -- ($(node_2.west) + (0,1cm)$);

\end{tikzpicture}
\end{document}

borose
08-01-2010, 14:17
wobei man eigentlich kein calc benötigt. das hier ist "schöner":



\documentclass{scrartcl}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}


\path node (node_1){1} ++(2cm,0) node (node_2){2};


\draw (node_1.east) + (up:1cm)
coordinate (node_1_east_shifted) --
(node_2.west |- node_1_east_shifted);

\end{tikzpicture}

\end{document}


Grüße

Q-Dog
08-01-2010, 19:21
Boah super, genau das hab ich gesucht, vielen Dank borose :)