
나는 우리가 에 선언된 포인트 레지스터의 데카르트 좌표를 사용 \x1
하고 \y1
접근하는 것을 보았습니다 .\p1
let
점의 극좌표( \a1
각도 및 \r1
거리 등)에 액세스할 수 있는 방법이 있습니까 \p1
?
그렇지 않은 경우 다음과 같은 작업을 수행하는 가장 좋은 방법은 무엇입니까?
\draw let \p1=(35:1cm) in (\a1+30,\r1) -- (\a1-30,2*\r1);
답변1
이에 대한 직접 등록이 있는지는 모르겠지만(저도 알고 싶습니다) 조금 더 작업하면 해당 정보에 액세스할 수 있습니다.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw[style=help lines] (0,0) grid[step=1cm] (3,2);
\draw[red,ultra thick] (0,0) -- (35:3cm);
\draw let \p1=(35:3cm), \n1 = {veclen(\x1,\y1)},\n2 = {atan2(\x1,\y1)} in (0,0) -- (\n2:\n1);
\draw let \p1=(35:1cm), \n1 = {veclen(\x1,\y1)},\n2 = {atan2(\x1,\y1)} in (0,0) -- (\n2+30:2*\n1);
\end{tikzpicture}
\end{document}
이것은
이것을 더욱 실용적인 매크로로 포장할 수 있지만 지금은 그 자체로는 그렇게 장황하지 않습니다. 또한 다른 점에 대해서도 동일한 작업을 수행할 수 있습니다. 즉, 각도와 길이를 측정한 원점일 필요는 없습니다.