
Tengo muchas imágenes pequeñas, cada una centrada en (0,0) en su propia figura, pero necesito combinarlas y en la imagen combinada el (0,0) de la primera imagen (en un alcance) debe ser (4, 2) de la segunda imagen: ¿cuál es la mejor manera de lograrlo?
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\filldraw[green](4,5)circle(2pt);
\begin{scope}
\begin{scope}
%Should point at the green dot - (3,2)X and (4,5) should be matched
\draw[red,latex-](0,0)--(3,2);
\end{scope}
\begin{scope}
% Should be at the other end of the red vector (3,2)X and (0,0)XX should be matched
\draw[blue](0,0)circle(5pt);
\end{scope}
\end{scope}
\end{tikzpicture}
\end{document}
La X después de las coordenadas está ahí para visualizar que estas coordenadas están (deberían ser válidas) en diferentes ámbitos)
PD: Actualmente lo estoy haciendo con xshift, yshift pero es un poco tedioso.
Respuesta1
Utilice coordenadas con nombre, como por ejemplo:
\coordinate (x) at (4,5);
\coordinate (y) at (3,2);
\filldraw[green](x)circle(2pt);
...
\draw[red,latex-](0,0)--(y);
...
Además, si lo desea, puede realizar posicionamiento relativo y cálculos.
Si desea utilizar dichas coordenadas en varias imágenes de TikZ, utilice la opción remember picture
.
Para la parte de mover el origen, es un poco más fácil cambiar el alcance a través de una coordenada que usar xshift
, yshift
, como en
\begin{scope}[shift={(1,3)}]
\draw[red,latex-](0,0)--(3,2);
\end{scope}
Aunque necesitas saber la diferencia para especificarla.