![“Unidade de medida ilegal (pt inserido)” Problema com foreach](https://rvso.com/image/392319/%E2%80%9CUnidade%20de%20medida%20ilegal%20(pt%20inserido)%E2%80%9D%20Problema%20com%20foreach.png)
Estou tentando fazer uma série de círculos com gradientes. Na segunda página criada há apenas /2pt/1pt/2pt e na última /20pt. Acho que há algo errado com meu loop foreach, mas não sei o quê.
\documentclass[tikz]{standalone}
\usepackage{xcolor}
\definecolor{myyellow}{cmyk}{0,0,10,0}
\begin{document}
\foreach \Radius/\j in {6.0/1, 6.05/2,...,8.0/42}
{
\begin{tikzpicture}[scale=.5]
\pgfmathsetmacro\k{\j*10}
\useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
\fill[fill=myyellow!\k] (0,0) circle (\Radius);
\end{tikzpicture}
}
\end{document}
Erro:
Illegal unit of measure (pt inserted).
<to be read again>
/
l.15 }
Responder1
Você precisa usar números inteiros para a fração de cor, e existe a opção de usar count
para essa mesma situação.
\documentclass[tikz]{standalone}
\usepackage{xcolor}
\definecolor{myyellow}{cmyk}{0,0,10,0}
\begin{document}
\foreach \Radius [count=\j] in {6.0, 6.05,...,8.0}
{
\begin{tikzpicture}[scale=.5]
\pgfmathtruncatemacro\k{\j*10}
\useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
\fill[fill=myyellow!\k] (0,0) circle (\Radius);
\end{tikzpicture}
}
\end{document}
Responder2
Realmente não faz sentido fazer isso myyellow!420
: todos os valores a partir de 100 produzirão a mesma cor.
Aqui o gradiente vai de 2 a 84 com a etapa 2.
\documentclass[tikz]{standalone}
\usepackage{xcolor}
\definecolor{myyellow}{cmyk}{0,0,10,0}
\begin{document}
\foreach \x in {2,4,...,84}
{
\begin{tikzpicture}[scale=.5]
\pgfmathsetmacro\Radius{(\x-2)/41+6}
\useasboundingbox[fill=black] (-8.2,-8.2) rectangle (8.2cm,8.2cm);
\fill[fill=myyellow!\x] (0,0) circle (\Radius);
\end{tikzpicture}
}
\end{document}