计算 TikZ 中坐标的高程

计算 TikZ 中坐标的高程

我正在为一个看似简单的问题绞尽脑汁。给定一个坐标,我想用它的分量进行一些计算。更具体地说,我想计算一个点的海拔。

考虑一下这个 M(not)WE:

\documentclass{article}

\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \coordinate (A) at (2,3);

    \newdimen\x
    \newdimen\y
    \pgfextractx{\x}{\pgfpointanchor{A}{center}}
    \pgfextracty{\y}{\pgfpointanchor{A}{center}}
    \pgfmathparse{atan2(\y,\x)}
    \node at (1,1) {\pgfmathresult};
\end{tikzpicture}
\end{document}

我的目标是从点 A 提取 x 和 y 分量,计算高程,并将其打印到节点中。我该如何实现?

答案1

您可以使用

\documentclass{article}

\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \coordinate (A) at (2,3);
%
  \newdimen\x
  \newdimen\y
  \pgfextractx{\x}{\pgfpointanchor{A}{center}}
  \pgfextracty{\y}{\pgfpointanchor{A}{center}}
  \node at (1,1) {\pgfmathparse{atan2(\y,\x)}\pgfmathresult};
\end{tikzpicture}
\end{document}

或者

\def\myresult{\pgfmathparse{atan2(\y,\x)}\pgfmathresult}
\node at (1,1) {\myresult};

或者

\pgfmathsetmacro\myresult{atan2(\y,\x)}
\node at (1,1) {\myresult};

答案2

let有一个标准的方法可以这样做:

\begin{tikzpicture}
  \coordinate (A) at (2,3);
  \path let \p1=(A) in node{\x1};
\end{tikzpicture}

在此处输入图片描述

如果你想要以数字(或厘米)表示,你可以看到这个答案

相关内容