8

In physics, it's sometimes useful to draw an arrow over a letter to represent the torch around that point. I've seen this in multiple textbooks and would like to know how to do it myself in \LaTeX documents. Anyone who knows a solution for this?

Note that this isn't just about putting a \curverarrow above a letter, but surrounding the letter by the curved arrow like in the picture I attached below.

Thanks in advance for the help and have a good day :)

enter image description here

4 Answers 4

11

You could use \curvearrowleft from AMS Symbols, e.g.:

\documentclass{article}

\usepackage{amssymb}
\newcommand{\curvearrow}[1]{\ooalign{\kern1pt \ensuremath{#1}\cr\hidewidth\raise.8ex\hbox{$\curvearrowleft$}\hidewidth}}

\begin{document}

$\curvearrow{a}, \curvearrow{b}, \curvearrow{c}$

\end{document}

enter image description here

Perhaps you have to tweak the distances, e.g. to cover capital letters.

1
  • I like the simplicity here, keeping the \usepackage count low. It doesn't match the exact look but certainly solves the crux of the problem :) Mar 17, 2021 at 17:35
7

Not sure if this looks too appealing but maybe this goes in the right direction.

\documentclass{article}
\usepackage{mathtools}
\usepackage{amssymb}
\usepackage{scalerel}
\newcommand\OverCurveArrowRight[2][n]{%
\setbox0\hbox{\scalerel*{\curvearrowright}{\overset{#1}{#2}}}\copy0%
\mathllap{\mathmakebox[\wd0]{#2\hskip0.2\wd0}}}
\newcommand\OverCurveArrowLeft[2][n]{%
\setbox0\hbox{\scalerel*{\curvearrowleft}{\overset{#1}{#2}}}\copy0%
\mathllap{\mathmakebox[\wd0]{\hskip0.2\wd0#2}}}
\begin{document}
abc $\OverCurveArrowRight{A}$ $\OverCurveArrowLeft{A}$ 
\[\OverCurveArrowRight{A}\to\OverCurveArrowLeft{A}\]
\[\OverCurveArrowRight[\int]{\int}\to\OverCurveArrowLeft{A}\]
\end{document}

enter image description here

4
  • I like very much your approach.
    – Sebastiano
    Mar 15, 2021 at 20:54
  • Some of them seem to go in the left direction, though.
    – Pål GD
    Mar 15, 2021 at 21:22
  • @PålGD You have to look at those from the back.
    – user237299
    Mar 15, 2021 at 21:40
  • This is very good in the output, and if the looks are a priority I would pick this because it's open for quality customization. :) Mar 17, 2021 at 17:38
7

Something like this, with the \nccircle command from pst-node?

\documentclass[12pt]{article}
\usepackage{pst-node}

\begin{document}

    \psset{arrowinset=0.1}
    $\psDefBoxNodes{A}{A}\nccircle[nodesep =5pt]{->}{A:bC}{0.6em}$%

\end{document} 

enter image description here

1
  • Very nice use of pst-node indeed. Putting this within a \newcommand and this would be a very easy method to implement. Mar 17, 2021 at 17:39
6

Starting from the code of the answer of the user @egreg in this question How to write a character overlapping another character I have adapted this using the packages graphicx, scalerel to have a little big arrow and to rotate the symbol \circlearrowleft of 170 degrees (for example).

\documentclass[a4paper,12pt]{article}
\usepackage{newtxtext,newtxmath}
\usepackage{graphicx,scalerel}
\makeatletter
\DeclareRobustCommand{\as}[1]{
  {\vphantom{#1}\mathpalette\erel@as{#1}}%
}
\newcommand{\cla}{\rotatebox[origin=c]{170}{\hstretch{1}{$\scaleobj{1.5}{\circlearrowleft}$}}}
\newcommand{\erel@as}[2]{%
  \ooalign{\hfil$\m@th#1\cla$\hfil\cr\hfil$\m@th#1#2$\hfil\cr}%
}
\makeatother  

\begin{document}
$\as{A}$

\end{document}

enter image description here

2
  • 1
    Thanks for linking to the how to overlap a character, together with your example that's very good for understanding. Mar 17, 2021 at 17:40
  • 1
    @StiggyStardust You're welcome...and I hope to help you :-)
    – Sebastiano
    Mar 18, 2021 at 21:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .