Coordenada TikZ que se refiere a la última "coordenada actual"
¿Es posible, dentro de una ruta TikZ, referirse a la "coordenada actual" como otra coordenada?
Para dejar en claro lo que quiero, tome este ejemplo, que a menudo termino haciendo porque no conozco mejor:
\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}
Lo que termino haciendo es:
\draw (origin) -| (1,1) coordinate (THIS) -- (THIS-|origin);
porque yo (digo) quiero dibujar una línea recta desde el punto actual hasta lo que sería un punto perpendicular a otro. Pero es una molestia escribir coordinate (THIS)
todo el tiempo, y me gustaría saber si hay una coordenada interna mágica que me permita hacer:
\draw (origin) -| (1,1) -- (THIS-|origin);
y THIS
sabría lo que significa 1,1
.
¿Existe THIS
, o lo que estoy haciendo es lo mejor que puedo conseguir?
Respuestas
Si está dispuesto a usar en to
lugar de --
, entonces la última coordenada se almacena \tikztostart
y se puede usar de la misma manera que usa 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}

Por supuesto, también puedes usar \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}