Zeichnen Sie einen undurchsichtigen Kreis (mit etwas Text) auf eine Tikz-Linie

Zeichnen Sie einen undurchsichtigen Kreis (mit etwas Text) auf eine Tikz-Linie

Ich habe gerade den folgenden Code -

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\draw (0,0) -- (3,0);
\draw (1.5,0) circle (5pt) node{a};
\end{tikzpicture}
\end{document}

Wenn wir die Ausgabe sehen, hat der Kreis die Linie darin, die ich nicht will. Außerdem will ich die Linie nicht in zwei Teilen zeichnen (also

\begin{tikzpicture}
\draw (0,0) -- (1.3,0);
\draw (1.7,0) -- (3,0);
\draw (1.5,0) circle (5pt) node{a};
\end{tikzpicture}

)

Dieser Code gibt mir genau das Ergebnis, das ich möchte, aber ich möchte diese Berechnung nicht manuell durchführen und so viele Linien in mein gesamtes Bild zeichnen. Wie bekomme ich einen Kreis, der undurchsichtig ist, aber auch etwas Text enthält?

Antwort1

Eine brachiale Methode besteht darin, den Kreis weiß zu füllen. Um den Code zu verkürzen, wird der Kreis als Knoten gezeichnet und in die Mitte des Pfads gesetzt.

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\draw (0,0) -- node[circle,minimum size=10pt,inner sep=0pt,fill=white,draw]{a} (3,0);
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

Wenn Sie nichts mit Weiß übermalen möchten, können Sie dies trotzdem in einem Pfad tun.

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\path (0,0) -- node[circle,minimum size=10pt,inner sep=0pt,draw](a){a} (3,0)
(a) edge (0,0)  edge  (3,0);
\end{tikzpicture}
\end{document}

Antwort2

Beim Zeichnen einer Linie in zwei Teilen ist keine manuelle Berechnung ihrer inneren Koordinaten erforderlich. Das Zeichnen mehrerer Linien lässt sich jedoch nicht vermeiden:

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\path (0,0) -- node (n) [circle,draw,minimum size=10pt,inner sep=0pt] {a} (3,0);
\draw (0,0) -- (n)  (n) -- (3,0);
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen