是否可以将坐标的 X 和 Y 值用作独立变量?我确实整理了 MWE,但它不起作用...我见过类似的问题,但没有一个能真正明确地回答我在这里问的问题,或者至少我无法从这些答案中提取任何实用的智慧。
\documentclass{minimal}
\usepackage{pgfplots}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (OR) at (0.00, 0.00);
\filldraw [red] (OR) circle(2pt);
\coordinate (PT) at ( $\x{OR} + 1.0$, $\y{OR} + 2.0$ );
\filldraw [blue] (PT) circle(2pt);
\end{tikzpicture}
\end{document}
答案1
如果您想要一个新点从另一个点向右移动 1 厘米并向上移动 2 厘米,您可以使用这些表达式中的任一个(可能还有更多)。
只有第一和第五个需要calc
图书馆。
\documentclass[tikz, border=3mm]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw[help lines] (0,0) grid (1,2);
\filldraw [red] (0,0) circle(2pt) coordinate (OR);
\path let \p1 = (OR) in coordinate (PT) at (\x1 + 1cm,\y1 + 2cm);
\path (OR)--++(1,2) coordinate (PT);
\path ([shift={(1,2)}]OR) coordinate (PT);
\path (OR)--++(0:1)--++(90:2) coordinate (PT);
\coordinate (PT) at ($(OR)+(1,2)$);
\filldraw [purple] (PT) circle(2pt);
\end{tikzpicture}
\end{document}
答案2
我不明白为什么你认为其他答案没有明确回答你的问题。有很多方法,在各种问题中都有涉及。以下是一种方法,使用语法let
:
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (OR) at (0.00, 0.00);
\filldraw [red] (OR) circle(2pt);
\path let \p1 = (OR) in coordinate (PT) at (\x1 + 1.0,\y1 + 2.0);
\filldraw [blue] (PT) circle(2pt);
\end{tikzpicture}
\end{document}
另请参阅为什么要避免使用最小类?