我正在尝试编写一个宏来与 tikz 一起使用。我的想法是,我有一个矩形,它在不同区域有不同的阴影。
这是我目前得到的:
\documentclass[tikz,border=10pt]{standalone}
\usepackage{pgf}
\usepackage{pgfplots}
\usepackage{pdfpages}
\usepackage{fp}
\usepackage{ifthen}
\usepackage{xparse}
\NewDocumentCommand{\projectionLayer}{mmm}{
% #1 lower left corner
% #2 number of concatenated projections
% #3 size of projections
\FPeval{\size}{(#2)*(#3)}
\begin{scope}[shift={#1}]
\draw [line width=1.2pt, fill=yellow] (0,0) rectangle (\size,1);
\foreach \s in {1,...,#2}{
\FPeval{\pos}{\s*(#3)}
\draw[very thick] (\pos, 0) -- (\pos,1);
}
\end{scope}
}
\begin{document}
\begin{tikzpicture}
\projectionLayer{(0, 0)}{11}{2}
\end{tikzpicture}
\end{document}
我知道有<{\SplitList{,}}o
或类似的东西,但我没有找到如何通过索引访问它(即在循环中\foreach
,\s
也许我误解了 LaTeX 的概念,并且有一种更优雅的方法来做到这一点。
所需的输出是,例如前两条线是虚线,后三条线是点线等等......