
Mas preciso delimitar os círculos para x, y em [-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}
Quero os círculos desenhados apenas sobre a parte cinza.
Responder1
Use \clip <path>;
como primeiro comando dentro de um scope
ambiente que contém o conteúdo a ser recortado (neste caso, os círculos).
O caminho de recorte pode ser um caminho arbitrário, mas não pode ter nenhuma opção de estilo adicional definida, e é por isso que não podemos reutilizar o retângulo colorido desenhado em outro lugar.
\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}