
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>)
각 샘플에 대해 반경을 계산합니다 . 이 점들을 통해 선을 그립니다.