最後の「現在の座標」を参照するTikZ座標

Nov 29 2020

TikZパス内で、「現在の座標」を別の座標として参照することは可能ですか?

私が何を望んでいるのかを明確にするために、この例を取り上げます。これは、よくわからないためによく行うことになります。

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
\coordinate (origin) at (0,0);
% suppose the "1,1" is a very complicate (possibly unknown) coordinate
% that I would love not to repeat in the code:
\draw (origin) -| (1,1) coordinate (THIS) -- (THIS-|origin);
% This is what I would like to do:
% \draw (origin) -| (1,1) -- (THIS-|origin);
\end{tikzpicture}
\end{document}

私がやることになるのは:

\draw (origin) -| (1,1) coordinate (THIS) -- (THIS-|origin);

私は(言う)現在の点から別の点に垂直な点まで直線を描きたいからです。しかし、それは痛みを入力するためにcoordinate (THIS)すべての時間を、私はその座標魔法の内部があるかどうか知りたいのは、私が行うことができます:

\draw (origin) -| (1,1) -- (THIS-|origin);

そしてTHISそれが意味することを知っているでしょう1,1

THIS存在しますか、それとも私がしていることが私が得ることができる最高のものですか?

回答

2 Noname Nov 29 2020 at 07:18

to代わりに使用する場合は--、最後の座標がに保存され\tikztostart、と同じように使用できますTHIS

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
\coordinate (origin) at (0,0);
% suppose the "1,1" is a very complicate (possibly unknown) coordinate
% that I would love not to repeat in the code:
% This is what I would like to do:
% \draw (origin) -| (1,1) -- (THIS-|origin);
 \draw (origin) -| (1,1)  to (\tikztostart-|origin);
\end{tikzpicture}
\end{document}

もちろん、を使用することもできます\THIS

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
\coordinate (origin) at (0,0);
\def\THIS{\tikztostart}
% suppose the "1,1" is a very complicate (possibly unknown) coordinate
% that I would love not to repeat in the code:
 \draw (origin) -| (1,1)  to (\THIS-|origin);
% This is what I would like to do:
% \draw (origin) -| (1,1) -- (THIS-|origin);
\end{tikzpicture}
\end{document}