Проблема с использованием функции rnd в полярных координатах Tikz

Проблема с использованием функции rnd в полярных координатах Tikz

Я пытаюсь рисовать линии разной, случайной длины, но в том же направлении. Я думал, что это должно сработать, но если я укажу любой другой угол, кроме 90 градусов (например, 30 градусов в этом примере), линии не будут указывать в одном направлении.

\documentclass{scrartcl}
\usepackage[papersize={5.5cm,8cm}, left=0.5cm,right=0.5cm,top=1cm,bottom=1cm,margin=0pt]{geometry}
\pagestyle{empty}
\usepackage{tikz}
\usepackage{pgfmath}

\begin{document}
\centering
\begin{tikzpicture}[remember picture,overlay]
\foreach \x in {0,1,...,\paperwidth}{
\draw(current page.south west)++(\x pt,0)--++(30:rnd);
}
\end{tikzpicture}
\end{document}

решение1

Используйте \pgfmathparseи \pgfmathresultдля получения случайного числа.

\documentclass{scrartcl}
\usepackage[papersize={5.5cm,8cm}, left=0.5cm,right=0.5cm,top=1cm,bottom=1cm,margin=0pt]{geometry}
\pagestyle{empty}
\usepackage{tikz}
\usepackage{pgf}

\pgfmathsetseed{\number\pdfrandomseed} % Getting different random numbers. If you don't want, comment this.

\begin{document}
\centering

\begin{tikzpicture}[remember picture,overlay]
\foreach \x in {0,1,...,\paperwidth}{
\pgfmathparse{int(rand*10)}\let\A=\pgfmathresult
\draw(current page.south west)++(\x pt,0)--++(80:\A);
}
\end{tikzpicture}
\end{document}

Связанный контент