有哪些通用策略可以最大限度地减少 PGF/TikZ 中有关尺寸过大的错误发生?
以下是一个例子,但我对这个特定问题的修复不太感兴趣,而对尽可能避免这些错误的一般方法更感兴趣。
我知道这是一个硬性限制,但我知道有些特定的构造特别成问题,而且可以相对容易地避免。(例如,参见这个问题,其中问题是路径的结果to
。)
\documentclass[tikz,border=5pt]{standalone}
\usetikzlibrary{shadows}
\begin{document}
\tikzset{
bom/.pic={
\foreach \i in {1,...,9}
\node (i\i) [shape=circle, inner sep=0pt, minimum size=(10-\i)/3*1mm*#1, circular glow={fill=red!\i0!yellow}, yshift=#1*.5mm, xshift=-#1*.2mm] at (70:#1*16mm) {};
}
}
\begin{tikzpicture}
\pic {bom=.25};
\pic at (-5,6) {bom=.25};
\end{tikzpicture}
\end{document}
答案1
minimum size
通过反复试验确定近似最小值。添加了测试。
\documentclass[tikz,border=5pt]{standalone}
\usetikzlibrary{shadows}
\begin{document}
\tikzset{
bom/.pic={
\foreach \i in {1,...,10}
\pgfmathsetlengthmacro{\size}{#1*(10-\i)*0.333mm}
\pgfmathsetlengthmacro{\size}{\size>0.2mm ? \size: 0.2mm}
\node (i\i) [shape=circle, inner sep=0pt, minimum size={\size}, circular glow={fill=red!\i0!yellow}, yshift={#1*.5mm}, xshift={-#1*.2mm}]
at (70:.25*16mm) {};
}
}
\begin{tikzpicture}
\pic {bom=.25};
\pic at (-5,6) {bom=.25};
\end{tikzpicture}
\end{document}