tikz에서 foreach 문 없이 \x는 어떻게 작동하나요?

tikz에서 foreach 문 없이 \x는 어떻게 작동하나요?

tikz 문서의 두 번째 튜토리얼을 진행했으며 일부 프로세스를 반복하기 위해 foreach 문 내부에서 \x를 사용하는 방법을 소개했습니다. 그러나 방금 foreach 문 없이도 \x가 나타날 수 있다는 것을 알았습니다. 나는다른 스레드대부분 단순화하고 다음과 같이 끝났습니다.

\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 ... in {1,...,5) 문과 같은 것이 없기 때문에 이 코드에서 \x가 무엇을 하는지 이해할 수 없습니다. . 그렇다면 이 구불구불한 선을 생성하는 데 \x가 어떻게 기여하고 이와 같은 명령문에서 일반적으로 어떻게 작동합니까? 그리고 왜 뒤에 r이 붙나요? r은 \x가 취하는 값을 곱하는 숫자를 나타냅니까?

답변1

매우 흥미로운 예입니다! 나는 단지 수백 페이지의 매뉴얼을 여러분에게 던지고 싶지는 않습니다.pgf수동 ~이다매우 유익합니다.
거기에서 다음을 찾을 수 있습니다:

함수 그리기
함수를 플롯할 때 플롯 데이터의 좌표는 수학 표현식을 평가하여 계산할 수 있습니다. pgf에는 수학 엔진이 함께 제공되므로 이 표현식을 지정한 다음 TikZ가 원하는 좌표를 자동으로 생성하도록 할 수 있습니다. 이 경우는 함수를 그릴 때 매우 일반적이므로 구문은 쉽습니다. 플롯 명령과 해당 로컬 옵션에 따라 직접 제공합니다.(좌표 표현). 일반 좌표처럼 보이지만 내부에서는 \x기본적으로 특수 매크로를 사용할 수 있지만 변수 옵션을 사용하여 변경할 수 있습니다. 그만큼(좌표 표현)그런 다음 다른 값에 대해 평가되고 \x결과 좌표가 표시됩니다.

[...]

/tikz/domain=<start>:<end>(기본값 없음, 초기에는 -5:5)
샘플을 가져오는 도메인을 설정합니다.

수학 표현식 구문: 연산자
엑스r: x를 각도로 변환합니다(x는 라디안으로 간주됩니다).
*180/3.14(그래서 기본적으로 내 의견 과 동일합니다 )


따라서 기본적으로 이 코드 조각은 -5:5 범위에서 500개의 샘플을 추출하고 이 값을 라디안 단위의 극좌표 각도로 사용합니다. 그런 다음 50-10*sin(10*<angle converted to degrees>)각 샘플에 대해 반경을 계산합니다 . 이 점들을 통해 선을 그립니다.

관련 정보