디버깅을 위해 tikz의 변수 값을 아는 방법

디버깅을 위해 tikz의 변수 값을 아는 방법

나는 tikz에 대해 꽤 신선하고 단순하지 않은 그림을 만들려고 노력하고 있습니다. 또한 let 명령과 함께 패키지를 사용하고 있지만 calc최종 수치는 원하는 수치가 아닙니다. 따라서 코드를 디버그해야 하며 let 명령 내에서 계산된 값을 알아야 합니다. 특히, 주어진 명령

\draw
let \p1 = ($(D1) - (D)$),
    \p2 = ($(D2) - (D)$),
    \n0 = {veclen(\x1, \y1)},
    %\n1 = {atan2(\x1, \y1)},
    %\n2 = {atan2(\x2, \y2)}
    \n1 = {atan(\x1/\y1) + 180*(\x1 < 0)},
    \n2 = {atan(\x2/\y2) + 180*(\x2 < 0)}
in (D1) arc(\n1:\n2:\n0);

값을 볼 수 있는 방법 이 있나요 \n1? \n2그림에 표시할 필요는 없지만 이 값이 올바른지 확인하기 위해 알아야 합니다. 감사합니다.

답변1

해당 값을 노드에 인쇄할 수 있지만 노드 트릭을 수행하지 않고 값만 보려면 로그 파일에 인쇄할 수 있습니다.

\documentclass[tikz]{standalone}
\usetikzlibrary{calc}

\def\shoutmyn#1{\expandafter\show\csname tikz@cc@n@#1\endcsname}

\begin{document}

\begin{tikzpicture}[]
\node (D1) {D1};
\node (D) at (3,2) {D};
\node (D2) at (1,4) {D2};
\draw
let \p1 = ($(D1) - (D)$),
    \p2 = ($(D2) - (D)$),
    \n0 = {veclen(\x1, \y1)},
    %\n1 = {atan2(\x1, \y1)},
    %\n2 = {atan2(\x2, \y2)}
    \n1 = {atan(\x1/\y1) + 180*(\x1 < 0)},
    \n2 = {atan(\x2/\y2) + 180*(\x2 < 0)}
in \pgfextra{\shoutmyn{1}}(D1) arc(\n1:\n2:\n0);
\end{tikzpicture}
\end{document}

예를 들어 TexnicCenter에 인쇄됩니다.

여기에 이미지 설명을 입력하세요

관련 정보