
Aber ich muss die Kreise für x, y in abgrenzen [-2,6]
.
\begin{tikzpicture}
\draw[yellow!10, fill=hkvbluelogo!5](-2, -2) rectangle (6, 6);
\foreach \s in {0, 1, 2} {
\draw [lightgray] (0,0) circle (\s + 0.5);
\draw (0,0) circle (\s);
\draw [thick,color=red,domain=0:2*pi,samples=200,smooth] plot (xy polar cs:angle=\x r,radius=\s );
}
\end{tikzpicture}
Ich möchte, dass die Kreise nur über den grauen Teil gezeichnet werden.
Antwort1
Verwenden Sie es \clip <path>;
als ersten Befehl in einer scope
Umgebung, die den auszuschneidenden Inhalt enthält (in diesem Fall die Kreise).
Der Beschneidungspfad kann ein beliebiger Pfad sein, für ihn dürfen jedoch keine zusätzlichen Stiloptionen festgelegt sein. Deshalb können wir das an anderer Stelle gezeichnete farbige Rechteck nicht wiederverwenden.
\documentclass[tikz,border=2pt]{standalone}
\begin{document}
\begin{tikzpicture}
\draw[yellow!10, fill=blue!10](-2, -2) rectangle (6, 6);
\begin{scope}
\clip (-2, -2) rectangle (6, 6);
\foreach \s in {0, 1, 2} {
\draw [lightgray] (0,0) circle (\s + 0.5);
\draw (0,0) circle (\s);
\draw [thick,color=red,domain=0:2*pi,samples=200,smooth] plot (xy polar cs:angle=\x r,radius=\s );
}
\end{scope}
\end{tikzpicture}
\end{document}