如何定义/保存一个点以供以后使用其他点的 x/y 坐标?我尝试使用垂直坐标系简写形式|-
,-|
但无法以这种方式定义点。
对于较大的图片,我更喜欢使用节点,而不是像(A -| B)
往常一样使用表达式。尤其是对于点的相对位置的更复杂的“计算”,这可能会变得乏味。
\begin{tikzpicture}
\draw [help lines, step=0.5cm] (-2.5,0) grid (0,2.5);
\node (A) at (-0.5,0.5) {A};
\node (B) at (-2,2) {B};
% \node (someName) at (A -| B);
\draw (A |- B) node {C};
\draw (A -| B) node {D};
\draw (A |- B) edge (A -| B);
\end{tikzpicture}
答案1
您可以完全按照您的尝试进行操作,只需指定一个节点文本:
\node (someName) at (A -| B) {SomeName};
或使用坐标:
\coordinate (someName) at (A -| B);
另一个选择是使用库let
中的路径操作calc
,如 3.0.0 手册第 161 页所述:
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw [help lines, step=0.5cm] (-2.5,0) grid (0,2.5);
\node (A) at (-0.5,0.5) {A};
\node (B) at (-2,2) {B};
\path let \p1 = (A), \p2 = (B) in node (C) at (\x1,\y2) {C} node (D) at (\x2,\y1) {D};
\draw (C.center) -- (D.center);
\end{tikzpicture}
\end{document}
您还可以使用库的其他功能对这些点进行其他计算calc
;我建议您查看手册中的该章节!:-)