9
\makeatletter
\newlength\@SizeOfCirc%
\newcommand{\CricArrowRight}[1]{%
\setlength{\@SizeOfCirc}{\maxof{\widthof{#1}}{\heightof{#1}}}%
\tikz [x=1.0ex,y=1.0ex,line width=.15ex, draw=black]%
\draw [->,anchor=center]%
node (0,0) {#1}%
(0,1.2\@SizeOfCirc) arc (-90:180:1.2\@SizeOfCirc);%
}%
\makeatother

This being in the premeable and the code below used in the document,

\begin{equation}
\CricArrowRight{+}\sum M_{z})_{o}&=0
\end{equation}

what I have produced is this,

enter image description here

but what I need to produce is the following:

enter image description here

Could you please help me write the equation above properly?

11

The arc starts at (0, 1.2\@SizeOfCirc), which is above the + sign. As you want it to start below the +, simply change the arc to start at (0, -1.2\@SizeOfCirc). This gives the following result:

Result

To position the symbol such that the + is aligned correctly, you'll have to change the baseline option of \tikz to baseline=-\the\dimexpr\fontdimen22\textfont2\relax, as described in this answer. The result then looks like this:

End result

The complete code:

\documentclass{article}

\usepackage{amsmath}
\usepackage{tikz,calc}

\makeatletter
\newlength\@SizeOfCirc%
\newcommand{\CricArrowRight}[1]{%
\setlength{\@SizeOfCirc}{\maxof{\widthof{#1}}{\heightof{#1}}}%
\tikz [x=1.0ex,y=1.0ex,line width=.15ex, draw=black, baseline=-\the\dimexpr\fontdimen22\textfont2\relax]%
\draw [->,anchor=center]%
node (0,0) {#1}%
(0,-1.2\@SizeOfCirc) arc (-90:180:1.2\@SizeOfCirc);
}%
\makeatother

\begin{document}
\begin{equation}
    \CricArrowRight{+} \sum M_{z})_{o}=0
\end{equation}
\end{document}
9

Done without tikz, by overlaying the amsmath symbol \circlearrowleft atop the argument. The circled arrow is scaled and rotated.

\documentclass{article}
\usepackage{stackengine,amssymb,graphicx}
\newcommand\CircArrowLeft[1]{\stackengine{-.3ex}{#1}{\CAL}{O}{c}{F}{F}{L}}
\newcommand\CAL{\scalebox{2}{\rotatebox[origin=center]{90}{$\circlearrowleft$}}}
\stackMath
\begin{document}
\begin{equation}
\CircArrowLeft{+}\sum M_{z})_{o}=0
\end{equation}
\end{document}

enter image description here

7

Similar to hbaderts' but with a bit of extras (e.g., \DOTSB for correct autopositioning of \dots, usage of pgfmath macros to calculate the width, etc.)

\documentclass{scrartcl}
\usepackage{mathtools,amssymb,lmodern,tikz}
\usetikzlibrary{arrows,bending}

\newcommand*\carr[1]
  {\DOTSB\mathbin{\mkern2mu\tikz[x=1ex, y=1ex, line width=.1ex, line cap=round, draw=black, baseline=-\the\fontdimen22\textfont2] {
    \pgfmathsetmacro\circlesize{max(width("$#1$"),height("$#1$"))*.8}
    \draw[->, >=stealth', anchor=center] node (0,0) {$#1$}
    ++(-100:\circlesize pt) arc (-100:195:\circlesize pt);}}}

\begin{document}
\[
  \Bigl( A \carr{+} \sum M_z \Bigr)_{0} = 0
\]
\end{document}
  • 2
    Nice. I think *.8 might look better, such that it does not rival the size of the symmation symbol. – daleif Jul 28 '15 at 11:57
  • The angles of the arc is another thing to consider, I chose what I chose because it looked good with + but may be if one uses another symbol another values are better (the default -90:180 might be the most general). @daleif That might be true (I edited the answer), in any case, it's quite easy to change the *.8 by whatever one prefers. – Manuel Jul 28 '15 at 12:04
  • @user82745 The way of saying thanks here is upvoting answers; and accepting the one that works better for you. In any case, you should change your username to something more telling than user12345. – Manuel Jul 28 '15 at 19:46
1

Another TikZ solution.

\documentclass[varwidth,border=7pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,bending}
\def\CricArrowRight#1{\tikz[baseline=(A.base)]
  \draw[-stealth,line width=.035em]
    (0,0) node[circle, inner sep=0cm](A){$#1$}
    let \p1=(A.center),\p2=(A.west), \n1={\x1-\x2} in
      (-90:\n1) arc(-90:190:\n1);}
\begin{document}
  $\CricArrowRight{+}\sum M_{z})_{o}=0$\\[1em]
  \CricArrowRight{+} \CricArrowRight{-} \CricArrowRight{\#}
\end{document}

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.