Как работает \x без оператора foreach в tikz?

Как работает \x без оператора foreach в tikz?

Я прошел второй урок в документации tikz и познакомился с использованием \x внутри операторов foreach для итерации некоторых процессов. Однако я только что узнал, что \x может появляться без оператора foreach. Я адаптировал часть кода издругая темамаксимально упростил и в итоге получилось следующее;

\documentclass[tikz,border=10]{standalone}

\begin{document}

\begin{tikzpicture}[scale=3,very thick]
\draw[samples=500] plot (canvas polar
cs:angle=\x r,radius={50-10*sin(10*\x r)}); %50 and 10 in 50 - 10 ... control the sharpness of each curve, 10 in sin(x) controls number of curves
\end{tikzpicture}

\end{document}

что создает это изображение:

введите описание изображения здесь

Однако я не понимаю, что делает \x в этом коде, поскольку нет ничего похожего на \foreach ... в операторе {1,...,5), который определяет диапазон значений, которые может принимать \x. Так как же \x способствует созданию этой волнистой линии и как он вообще работает в таком операторе? Кроме того, почему за ним следует r? Представляет ли r число, которое умножает значение, которое принимает \x?

решение1

Очень интересный пример! Я не просто хочу завалить вас сотнями страниц руководства, ноpgfmanual являетсяочень познавательно.
Там вы найдете:

Построение графика функции
Когда вы строите график функции, координаты данных графика можно вычислить, оценив математическое выражение. Поскольку pgf поставляется с математическим движком, вы можете указать это выражение, а затем TikZ автоматически создаст для вас нужные координаты. Поскольку этот случай довольно распространен при построении графика функции, синтаксис прост: следуя команде plot и ее локальным параметрам, вы напрямую указываете(координатное выражение). Выглядит как обычная координата, но внутри вы можете использовать специальный макрос, который есть \xпо умолчанию, но его можно изменить с помощью переменной опции.(координатное выражение)Затем оценивается для различных значений \xи полученные координаты отображаются на графике.

[...]

/tikz/domain=<start>:<end>(значение по умолчанию отсутствует, изначально -5:5)
Устанавливает домен, из которого берутся образцы

Синтаксис математических выражений: операторы
Иксr: Преобразует x в градусы (предполагается, что x выражен в радианах).
(Так что в принципе то же самое, что *180/3.14и мой комментарий)


Итак, по сути, этот фрагмент кода рисует 500 образцов из диапазона -5:5 и принимает эти значения как углы полярных координат в радианах. Затем он вычисляет радиус как 50-10*sin(10*<angle converted to degrees>)для каждого образца. Через эти точки он рисует линию.

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