Zwei Linien senkrecht zueinander mit TikZ zeichnen

Tabellen und Grafiken erstellen und anordnen


Jenss

Zwei Linien senkrecht zueinander mit TikZ zeichnen

Beitrag von Jenss »

Hallo,

ich möchte gerne mit TikZ zwei definierte Punkte verbinden und bei beiden Punkten jeweils eine Linie Links und Rechts 1cm wegzeichnen. Also das soll rauskommen:
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage{tikz}
\begin{document}
	\begin{tikzpicture}
    	\node [fill,draw,red] (A) at (0,0) {}circle (3pt); %1. Punkt
    	\node  [fill,draw,red] (B) at (0,2) {} circle (3pt); %2. Punkt
        %Muster
        \draw(A.center)--(B.center);
        \draw(A.center)-- ++(1,0);
        \draw(A.center)-- ++(-1,0);
        \draw(B.center)-- ++(1,0);
        \draw(B.center)-- ++(-1,0);
    \end{tikzpicture}
\end{document} 
Kennt jemand eine Möglichkeit, anstelle der 5 Befehle nur einen zu verwenden?

Allgemeiner Gefragt: Kann man zwei Linien, die senkrecht zueinander stehen, mit nur einem Befehl zeichnen, quasi als "durchgezogene Linie"?

Danke,
Gruß Jens

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Meine Vorschläge zu Deiner Beschreibung:
\documentclass[border=5pt]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[
   nodes={
      fill=red,
      draw=red
   }
]
\node (A) at (0,0) {};% 1. Punkt
\node (B) at (0,2) {};% 2. Punkt
       
\draw 
    (A.center) -- (B.center)
    ([xshift=-1cm]A.center) -- ([xshift=1cm]A.center)
    ([xshift=-1cm]B.center) -- ([xshift=1cm]B.center)
;
\end{tikzpicture} 
\begin{tikzpicture}[
   nodes={
      fill=red,
      draw=red
   }
]
\node (A) at (0,0) {};% 1. Punkt
\node (B) at (0,2) {};% 2. Punkt
       
\draw 
    (A.center) -- (B.center)
    (A) -- +(0:1) -- +(180:1)
    (B) -- +(0:1) -- +(180:1)
;
\end{tikzpicture}
\end{document}
Wenn diese Zeichnung nur ein Teil einer größeren Zeichnung sein sollte, dann solltest Du statt der Einstellungen für nodes einen eigenen Stil für die beiden Knoten bestimmen.

Antworten