
Gostaria de saber como preencher a área especificada com pontos pontilhados. Quero preencher a área verde com pontos aleatórios verdes e, em vez da área vermelha, quero preenchê-la com um ponto aleatório vermelho e a área branca com pontos aleatórios azuis. Aqui está o meu código:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}
%\usepackage{xcolor,pict2e}% to allow any radius
\tikzset{pics/myarc/.style args={inner #1 and outer #2 with fill #3}{
code={
\draw[very thick, #1] (1,0) arc (0:90:1cm);
\draw[very thick] (0,1) -- (0,2);
\draw[very thick, #2] (0,2) arc (90:0:2cm);
\draw[very thick] (2,0) -- (1,0);
\fill[#3] (1,0) arc (0:90:1cm) -- (0,2) arc (90:0:2cm) -- cycle;
}
}}
\begin{document}
\begin{tikzpicture}
\draw[very thick,<->] (-6,0) -- (6,0)node[anchor=north west] {$x$};
\pic [draw,very thick, rotate=-45] {myarc={inner blue and outer blue with fill green!}};
\pic [draw, very thick, rotate=45] {myarc={inner blue and outer blue with fill white}};
\pic [draw, very thick, rotate=135] {myarc={inner blue and outer blue with fill red!40}};
\pic [draw, very thick, rotate=225] {myarc={inner cyan and outer blue with fill white}};
\end{tikzpicture}
\end{document}
Qualquer ajuda será muito apreciada. Obrigado
Responder1
Com pontos regulares.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing,patterns}
%\usepackage{xcolor,pict2e}% to allow any radius
\tikzset{pics/myarc/.style args={inner #1 and outer #2 with fill #3}{
code={
\draw[very thick, #1] (1,0) arc (0:90:1cm);
\draw[very thick] (0,1) -- (0,2);
\draw[very thick, #2] (0,2) arc (90:0:2cm);
\draw[very thick] (2,0) -- (1,0);
\fill[pattern=dots,pattern color = #3] (1,0) arc (0:90:1cm) -- (0,2) arc (90:0:2cm) -- cycle;
}
}}
\begin{document}
\begin{tikzpicture}
\draw[very thick,<->] (-6,0) -- (6,0)node[anchor=north west] {$x$};
\pic [draw,very thick, rotate=-45] {myarc={inner blue and outer blue with fill green!}};
\pic [draw, very thick, rotate=45] {myarc={inner blue and outer blue with fill blue}};
\pic [draw, very thick, rotate=135] {myarc={inner blue and outer blue with fill red!40}};
\pic [draw, very thick, rotate=225] {myarc={inner cyan and outer blue with fill blue}};
\end{tikzpicture}
\end{document}
A randomização precisa de mais trabalho eessa questãoe suas respostas devem avisar.
E aqui está uma tentativa usando a estratégia deesta resposta
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing,patterns}
%\usepackage{xcolor,pict2e}% to allow any radius
\tikzset{pics/myarc/.style args={inner #1 and outer #2 with fill #3}{
code={
\draw[very thick, #1] (1,0) arc (0:90:1cm);
\draw[very thick] (0,1) -- (0,2);
\draw[very thick, #2] (0,2) arc (90:0:2cm);
\draw[very thick] (2,0) -- (1,0);
\clip (1,0) arc (0:90:1cm) -- (0,2) arc (90:0:2cm) -- cycle;
\foreach \x in {1,...,300}
{
\pgfmathrandominteger{\a}{5}{300}
\pgfmathrandominteger{\b}{5}{300}
\pgfmathrandominteger{\c}{30}{30}
\fill[#3] (0.01*\a,0.01*\b) circle (0.001*\c);
};
}
}}
\begin{document}
\begin{tikzpicture}
\draw[very thick,<->] (-6,0) -- (6,0)node[anchor=north west] {$x$};
\pic [draw,very thick, rotate=-45] {myarc={inner blue and outer blue with fill green!}};
\pic [draw, very thick, rotate=45] {myarc={inner blue and outer blue with fill blue}};
\pic [draw, very thick, rotate=135] {myarc={inner blue and outer blue with fill red!40}};
\pic [draw, very thick, rotate=225] {myarc={inner cyan and outer blue with fill blue}};
\end{tikzpicture}
\end{document}