# Drawing a curved arrow between a set and its image under a rotation

I have two triangles drawn on two displays of the Cartesian planes. One is the image of the other under a rotation about the origin of 90 degrees. I would like to draw a curved arrow with the letter "r" typeset under it indicating the triangle in the domain of r and its image under r.

\documentclass{amsart}
\usepackage{amsmath}
\usepackage{amsfonts}

\usepackage{tikz}
\usetikzlibrary{calc,angles,positioning,intersections}

\begin{document}

\begin{tikzpicture}

%A triangle is to be drawn on the Cartesian plane.
\coordinate (R) at (-0.5,0.75);
\coordinate (S) at (1,1);
\coordinate (T) at (0.5,-0.5);

\draw (R) -- (S) -- (T) -- cycle;

\draw let \p1=($(R)-(S)$), \n1={atan(\y1/\x1)}, \p2=($(R)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)}, inner sep=0, font=\footnotesize] at ($(R) +({0.5*(\n1+\n2)+180}:0.15)$){$R$};
\draw let \p1=($(R)-(S)$), \n1={atan(\y1/\x1)}, \p2=($(S)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)-180}, inner sep=0, font=\footnotesize] at ($(S) +({0.5*(\n1+\n2)}:0.15)$){$S$};
\draw let \p1=($(R)-(T)$), \n1={atan(\y1/\x1)}, \p2=($(S)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2-180)-180}, inner sep=0, font=\footnotesize] at ($(T) +({0.5*(\n1+\n2-180)}:0.15)$){$T$};

\draw[latex-latex] (-1.75,0) -- (1.75,0);
\node [anchor=north west] at (1.75,0) {$x$};
\draw[latex-latex] (0,-1) -- (0,1.75);
\node [anchor=south west] at (0,1.75) {$y$};

%The image of $\triangle\mathit{RST}$ under a rotation of 90 degrees about the origin
%is to be drawn on the Cartesian plane.

\coordinate (O') at (6,0);

\coordinate (R') at ($(O') +(-0.75,-0.5)$);
\coordinate (S') at ($(O') +(-1,1)$);
\coordinate (T') at ($(O') +(0.5,0.5)$);

\draw (R') -- (S') -- (T') -- cycle;

\draw let \p1=($(R')-(S')$), \n1={atan(\y1/\x1)}, \p2=($(R')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+180+\n2)}, inner sep=0, font=\footnotesize] at ($(R') +({0.5*(\n1+180+\n2)+180}:0.15)$){$R^{\prime}$};
\draw let \p1=($(R')-(S')$), \n1={atan(\y1/\x1)}, \p2=($(S')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)}, inner sep=0, font=\footnotesize] at ($(S') +({0.5*(\n1+\n2)-180}:0.15)$){$S^{\prime}$};
\draw let \p1=($(R')-(T')$), \n1={atan(\y1/\x1)}, \p2=($(S')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)-180}, inner sep=0, font=\footnotesize] at ($(T') +({0.5*(\n1+\n2)}:0.15)$){$T^{\prime}$};

\draw[latex-latex] ($(O') +(-1.75,0)$) -- ($(O') +(1.75,0)$);
\node [anchor=north west] at ($(O') +(1.75,0)$){$x$};
\draw[latex-latex] ($(O') +(0,-1)$) -- ($(O') +(0,1.75)$);
\node [anchor=south west] at ($(O') +(0,1.75)$){$y$};

\end{tikzpicture}

\end{document}


Not sure where exactly you want that arrow,

\draw [-latex,shorten >=5pt,shorten <=5pt] ([yshift=-0.5cm]T) to[out=300,in=240] node[below=3pt] {$r$}([yshift=-0.5cm]R');


will place it below the triangles:

current bounding box is the name of the node shape surrounding the image, so

\draw [-latex,blue] (current bounding box.center |- O')  ++(0,0.5cm) ++(210:2.7cm) arc[start angle=210,end angle=330,radius=2.7cm];


will draw an arc centered about the point you mention.

\documentclass{amsart}
\usepackage{amsmath}
\usepackage{amsfonts}

\usepackage{tikz}
\usetikzlibrary{calc,angles,positioning,intersections}

\begin{document}

\begin{tikzpicture}

%A triangle is to be drawn on the Cartesian plane.
\coordinate (R) at (-0.5,0.75);
\coordinate (S) at (1,1);
\coordinate (T) at (0.5,-0.5);

\draw (R) -- (S) -- (T) -- cycle;

\draw let \p1=($(R)-(S)$), \n1={atan(\y1/\x1)}, \p2=($(R)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)}, inner sep=0, font=\footnotesize] at ($(R) +({0.5*(\n1+\n2)+180}:0.15)$){$R$};
\draw let \p1=($(R)-(S)$), \n1={atan(\y1/\x1)}, \p2=($(S)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)-180}, inner sep=0, font=\footnotesize] at ($(S) +({0.5*(\n1+\n2)}:0.15)$){$S$};
\draw let \p1=($(R)-(T)$), \n1={atan(\y1/\x1)}, \p2=($(S)-(T)$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2-180)-180}, inner sep=0, font=\footnotesize] at ($(T) +({0.5*(\n1+\n2-180)}:0.15)$){$T$};

\draw[latex-latex] (-1.75,0) -- (1.75,0) coordinate (x1);
\node [anchor=north west] at (1.75,0) {$x$};
\draw[latex-latex] (0,-1) -- (0,1.75);
\node [anchor=south west] at (0,1.75) {$y$};

%The image of $\triangle\mathit{RST}$ under a rotation of 90 degrees about the origin
%is to be drawn on the Cartesian plane.

\coordinate (O') at (6,0);

\coordinate (R') at ($(O') +(-0.75,-0.5)$);
\coordinate (S') at ($(O') +(-1,1)$);
\coordinate (T') at ($(O') +(0.5,0.5)$);

\draw (R') -- (S') -- (T') -- cycle;

\draw let \p1=($(R')-(S')$), \n1={atan(\y1/\x1)}, \p2=($(R')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+180+\n2)}, inner sep=0, font=\footnotesize] at ($(R') +({0.5*(\n1+180+\n2)+180}:0.15)$){$R^{\prime}$};
\draw let \p1=($(R')-(S')$), \n1={atan(\y1/\x1)}, \p2=($(S')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)}, inner sep=0, font=\footnotesize] at ($(S') +({0.5*(\n1+\n2)-180}:0.15)$){$S^{\prime}$};
\draw let \p1=($(R')-(T')$), \n1={atan(\y1/\x1)}, \p2=($(S')-(T')$), \n2={atan(\y2/\x2)} in node[anchor={0.5*(\n1+\n2)-180}, inner sep=0, font=\footnotesize] at ($(T') +({0.5*(\n1+\n2)}:0.15)$){$T^{\prime}$};

\draw[latex-latex] ($(O') +(-1.75,0)$) coordinate (x2) -- ($(O') +(1.75,0)$);
\node [anchor=north west] at ($(O') +(1.75,0)$){$x$};
\draw[latex-latex] ($(O') +(0,-1)$) -- ($(O') +(0,1.75)$);
\node [anchor=south west] at ($(O') +(0,1.75)$){$y$};

\draw [-latex,shorten >=5pt,shorten <=5pt] ([yshift=-0.5cm]T) to[out=300,in=240] node[below=3pt] {$r$}([yshift=-0.5cm]R');

\draw [-latex,blue] ($(x1)!0.5!(x2) + (0,0.5cm)$)  ++(210:2.7cm) arc[start angle=210,end angle=330,radius=2.7cm];

\end{tikzpicture}

\end{document}

• Yep, that is the appropriate command. I prefer the specifications in this command: \draw [-latex] (2,0.5) to[out=60,in=120] node[below=3pt] {$r$}($(O') +(-2,0.5)$); It is consistent with the displays in textbooks that I have used. Thanks. – Adelyn Jan 26 '16 at 0:21
• In case I want to have the arrow centered about the point P that is along the vertical line that divides the display into halves and that is 0.5cm above the x-axes, what command that should be issued? I forgot the syntax for bounding.box. – Adelyn Jan 26 '16 at 0:21