Como saber valores de variáveis ​​no tikz para depuração

Como saber valores de variáveis ​​no tikz para depuração

Sou muito novo no tikz e estou tentando criar uma imagem não tão simples. Também estou utilizando o calcpacote com o comando let, mas o valor final não é o desejado. Portanto, preciso depurar o código e saber os valores computados no comando let. Em particular, dado o comando

\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);

existe uma maneira de ver os valores \n1e \n2? Observe que não preciso exibi-los na imagem, mas preciso conhecê-los apenas para verificar se esses valores estão corretos. Obrigado.

Responder1

Você pode imprimir o valor deles em um nó, mas se quiser apenas vê-los sem fazer nenhum truque de nó, você pode imprimi-los no arquivo de log

\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}

Isto, por exemplo, é impresso no TexnicCenter

insira a descrição da imagem aqui

informação relacionada