在另一个表达式中直接使用 \pgfmathparse

在另一个表达式中直接使用 \pgfmathparse

我可以将其存储\pgfmathresult在一个变量中\y,然后将该变量传递给另一个表达式(\pgfpoint):

 \begin{tikzpicture}
    \newcommand\displ{2}
    \pgfmathparse{\displ + 2}\edef\y{\pgfmathresult}
    \pgfpoint{0}{\y}
  \end{tikzpicture}

我可以直接构造\pgfpoint

\pgfpoint{0}{??? \pgfmathparse{\displ + 2}}

答案1

显然,这个方法有效。(这一行很短,因为如果你不指定单位,单位就是pt。)

\documentclass[border=2mm]{standalone}
\usepackage{tikz}

\begin{document}
 \begin{tikzpicture}
    \newcommand\displ{2}
    \pgfpathmoveto{\pgfpoint{0}{\displ}}
    \pgfpathlineto{\pgfpoint{0}{\displ+2}}
    \pgfusepath{stroke}
\end{tikzpicture}
\end{document}

相关内容